My system is centos 7.4, with apache 2.4
Based on apache manual,apachectl -k graceful
should be the way to graceful restart apache, but I got notice as below:
[root@localhost root]# apachectl -k graceful
Passing arguments to httpd using apachectl is no longer supported.
You can only start/stop/restart httpd using this script.
If you want to pass extra arguments to httpd, edit the
/etc/sysconfig/httpd config file.
What's the problem?
How to Graceful Restart Apache
in centos 7?
Best Answer
Please see this page on apachectl, which appears to be a new version: https://httpd.apache.org/docs/2.4/programs/apachectl.html
There is no need to pass the '-k' argument.
apachectl graceful
(without the -k) works just fine for a graceful reload/restart on my Centos7 box and Centos6 box.Apparently nobody updated the manual page OP cited in her question, which still exists, and where the commands are shown with the '-k' argument throughout (apachectl -k graceful, apachectl -k restart, etc.) There's no explanation on that page about what the -k argument is actually doing, however.
But on the newer page there is this note on about apachectl graceful:
On my Centos6 box, I had been using the command
service httpd graceful
. That no longer worked on Centos7. It's necessary to useapachectl graceful
to do the equivalent on Centos 7. Alsoapachectl graceful
works just fine on Centos 6.