| README for Apache 2.0 Example Module | |
| [April, 1997, updated May 2000] | |
| The files in the src/modules/examples directory under the Apache | |
| distribution directory tree are provided as an example to those that | |
| wish to write modules that use the Apache API. | |
| The main file is mod_example_hooks.c, which illustrates all the different | |
| callback mechanisms and call syntaces. By no means does an add-on | |
| module need to include routines for all of the callbacks - quite the | |
| contrary! | |
| The example module is an actual working module. If you link it into | |
| your server, enable the "example-hooks-handler" handler for a location, | |
| and then browse to that location, you will see a display of some of the | |
| tracing the example module did as the various callbacks were made. | |
| To include the example module in your server add --enable-example-hooks | |
| to the other ./configure arguments executed from the httpd source tree. | |
| After that run 'make'. | |
| To add another module of your own: | |
| A. cp modules/examples/mod_example_hooks.c modules/examples/mod_myexample.c | |
| B. Modify the file | |
| C. Add an entry to modules/examples/config.m4, e.g. | |
| APACHE_MODULE(myexample, my new module, , , no) | |
| The last argument specifies if the module is built by-default | |
| D. Build the server with --enable-myexample | |
| For windows, the process is slightly different; | |
| A. copy modules\examples\mod_example_hooks.c modules\examples\mod_myexample.c | |
| B. copy modules\examples\mod_example_hooks.dsp modules\examples\mod_myexample.dsp | |
| C. replace the occurrences of 'example_hooks' with your module name. | |
| D. add the new .dsp to your Apache.dsw workspace, with dependencies | |
| on the libapr, libaprutil and libhttpd projects. With the newer | |
| Developer Studio 2002 through 2005, when you add the new .dsp | |
| file it will be converted to a .vcproj file. | |
| To activate the example module, include a block similar to the | |
| following in your httpd.conf file: | |
| <Location /example-info> | |
| SetHandler example-hooks-handler | |
| </Location> | |
| As an alternative, you can put the following into a .htaccess file and | |
| then request the file "test.example" from that location: | |
| AddHandler example-hooks-handler .example | |
| After reloading/restarting your server, you should be able to browse | |
| to this location and see the brief display mentioned earlier. |