Derokorian;11044943 wrote:
Changes to the rewrite rules require an apache restart to reparse the conf.
edit: oh, should perhaps have read all posts first…
Not according to their documentation at http://httpd.apache.org/docs/2.2/stopping.html
Graceful Restart
Signal: USR1
apachectl -k graceful
The USR1 or graceful signal causes the parent process to advise the children to exit after their current request (or to exit immediately if they're not serving anything). The parent re-reads its configuration files and re-opens its log files. As each child dies off the parent replaces it with a child from the new generation of the configuration, which begins serving new requests immediately.
I havn't tried this with Apache, but I know it works well in nginx (nginx -s reload which uses HUP). Just make sure you verify that all config files are valid before reloading them. Otherwise your web server will come to a screetching halt.
sneakyimp;11044947 wrote:It also requires root-level access to implement usually
You'd only need to let the user execute "apachectl -k restart" as root. Not sure if this would differ across shells, distros, unix flavors etc, but adding the following to /etc/sudoers should be enough
%the-user ALL:(root) /path/to/apachectl -k graceful
where the-user actually is the user's group, but you may use a group containing only one single person. This way you do not give the user root access. You only allow them to run "apachectl -k graceful" as root.