Dear Wiki user, You have subscribed to a wiki page or wiki category on "Httpd Wiki" for change notification.
The following page has been changed by MarcMongenet: http://wiki.apache.org/httpd/ModuleLife The comment on the change is: post_config call by children processes ------------------------------------------------------------------------------ * The module is dynamically loaded in the single-process single-thread server, that is still running as root if it was started as root. - * The configuration is parsed, to check that is is valid. + * The configuration is parsed, but just to check that it is valid. * The module post_init hook is called for the 1st time. - * Depending on platform, the module is completely unloaded and reloaded. It means that all global variables are lost. + * Depending on platform, the module is completely unloaded and reloaded. It means that global and static variables are reset. * The configuration is parsed again, for real this time. * The module post_init is called for the 2nd time. * Child processes are started, they may be forked, or not (Windows). @@ -28, +28 @@ } }}} + === post_config call by children processes === + On WinNT MPM, the post_config hook is also called by the children. + + To know if we are in a child, we can check the AP_PARENT_PID environment variable: it is only set in children. + == Preventing module unloading == To prevent module unloading, there is a ''sick and twisted hack'' (wrowe dixit): "the evil method is to use apr_dso_load() against the process pool to load it 'permanently'".
