ฉันแก้ไขตัวแปรAllowOverrideสำหรับหนึ่งในเว็บไซต์ของฉันในไดเรกทอรีที่เปิดใช้งานไซต์ ฉันจะโหลดการกำหนดค่าใหม่โดยไม่ต้องรีสตาร์ท apache ได้อย่างไร เป็นไปได้ไหม?
ฉันแก้ไขตัวแปรAllowOverrideสำหรับหนึ่งในเว็บไซต์ของฉันในไดเรกทอรีที่เปิดใช้งานไซต์ ฉันจะโหลดการกำหนดค่าใหม่โดยไม่ต้องรีสตาร์ท apache ได้อย่างไร เป็นไปได้ไหม?
คำตอบ:
ควรเป็นไปได้โดยใช้คำสั่ง
sudo /etc/init.d/apache2 reload
หวังว่าจะช่วย
วิธีอื่นคือ:
sudo service apache2 reload
ทำ
apachectl -k graceful
ตรวจสอบลิงค์นี้สำหรับข้อมูลเพิ่มเติม: http://www.electrictoolbox.com/article/apache/restart-apache/
apachectl graceful: Gracefully restarts the Apache daemon by sending it a SIGUSR1. If the daemon is not running, it is started. This differs from a normal restart in that currently open connections are not aborted.
อัปเดตสำหรับ Apache 2.4, สำหรับที่ไม่ใช่ systemd (เช่น CentOS 6.x, Amazon Linux AMI) และสำหรับ systemd (เช่น CentOS 7.x):
มีสองวิธีในการมีกระบวนการ apache โหลดการกำหนดค่าใหม่ขึ้นอยู่กับสิ่งที่คุณต้องการทำกับเธรดปัจจุบันทั้งแนะนำให้ออกเมื่อไม่ได้ใช้งานหรือฆ่าพวกเขาโดยตรง
โปรดทราบว่า Apache แนะนำให้ใช้apachectl -k
เป็นคำสั่งและสำหรับ systemd คำสั่งจะถูกแทนที่ด้วยhttpd -k
apachectl -k graceful
หรือ httpd -k graceful
Apache จะแนะนำเธรดให้ออกเมื่อไม่ได้ใช้งานจากนั้น apache จะโหลดการกำหนดค่าใหม่ (ไม่ออกจากตัวเอง) ซึ่งหมายความว่าสถิติจะไม่ถูกรีเซ็ต
apachectl -k restart
หรือ httpd -k restart
สิ่งนี้คล้ายกับการหยุดในกระบวนการนั้นฆ่าเธรดของมัน แต่จากนั้นกระบวนการจะโหลดไฟล์การกำหนดค่าแทนที่จะฆ่าตัวเอง
httpd -k graceful
เท่านั้นhttpd -k restart
: httpd /?
=>-k restart : tell running Apache to do a graceful restart