I-restart ang Apache sa Ubuntu, RedHat, Gentoo at iba pang mga Linux Distros
Kung nagho-host ka ng iyong website sa isang open source platform, malamang na ang platform na ito ay Apache. Kung ito ang kaso, at ikaw ay nagho-host sa isang Apache server, pagkatapos ay kapag nagtatrabaho ka sa pag-edit ng Apache httpd.conf file o ibang configuration file (tulad ng pagdaragdag ng bagong virtual host), kakailanganin mong i-restart ang Apache upang magkakabisa ang iyong mga pagbabago. Ito ay maaaring mukhang nakakatakot, ngunit sa kabutihang-palad ito ay napakadaling gawin.
Sa katunayan, maaari mong gawin ito sa loob ng isang minuto (hindi pagbibilang ang oras na aabutin upang basahin ang artikulong ito upang makuha ang hakbang sa pamamagitan ng mga tagubilin).
Nagsisimula
Upang i-restart ang iyong Linux Apache web server, ang pinakamahusay na paraan ay ang paggamit ng init.d na utos. Ang utos na ito ay magagamit sa maraming mga distribusyon ng Linux kabilang ang Red Hat, Ubuntu at Gentoo. Narito kung paano mo gagawin ito:
- Mag-login sa iyong web server gamit ang SSH o telnet at siguraduhin na kasama ng iyong system ang init.d na utos. Ito ay karaniwang matatagpuan sa / etc directory, kaya ilista ang direktoryong iyon:
ls / etc / i *
- Kung ang iyong server ay gumagamit ng init.d, makakakuha ka ng isang listahan ng mga file sa pagsisimula sa tinukoy na folder na iyon. Hanapin ang apache o apache2 sa susunod na folder. Kung mayroon kang init.d, ngunit wala kang Apache initialization file, pumunta sa seksyon ng artikulong ito gamit ang heading na nagbabasa ng "Restart Your Server Without Init.d", kung hindi, maaari kang magpatuloy.
- Kung mayroon kang init.d at isang file ng initialization ng Apache, maaari mong i-restart ang Apache gamit ang command na ito:
/etc/init.d/apache2 reload
Maaaring kailangan mong sudo sa bilang root user upang patakbuhin ang command na ito.
Ang I-reload na Pagpipilian
Ang paggamit ng opsyon na reload ay ang pinakamahusay na paraan upang i-restart ang iyong server ng Apache, habang pinapanatili nito ang server na tumatakbo (ang proseso ay hindi pinapatay at na-restart). Sa halip, ini-reload lamang nito ang httpd.conf file, na karaniwan lamang ang nais mong gawin sa pagkakataong ito.
Kung ang opsyon na reload ay hindi gumagana para sa iyo, maaari mo ring subukang gamitin ang sumusunod na mga utos sa halip:
- /etc/init.d/apache2 restart - ang utos na ito ay pumapatay sa proseso ng server at pagkatapos ay muling i-restart ito
- /etc/init.d/apache2 stop - Ang utos na ito ay pumapatay sa proseso ng server
- /etc/init.d/apache2 start - Ang command na ito ay nagsisimula sa server (at magtatapon ng isang error message kung tumatakbo na ang server)
I-restart ang Iyong Server Nang walang Init.d
OK, kaya't dito kami nagtanong sa iyo na lumaktaw sa kung ang iyong server ay walang init.d. Kung ito ay sa iyo, huwag mawalan ng pag-asa, maaari mo pa ring i-restart ang iyong server. Kailangan mo lang gawin ito nang manu-mano sa command apachectl. Narito ang mga hakbang para sa sitwasyong ito:
- Mag-login sa iyong web server machine gamit ang SSH o telnet
- Patakbuhin ang programang kontrol ng apache:
apachectl graceful
Maaaring kailangan mong sudo sa bilang root user upang patakbuhin ang command na ito.
Ang apachectl graceful command ay nagsasabi sa Apache na nais mong i-restart ang server nang maganda nang hindi binubuga ang anumang mga bukas na koneksyon. Awtomatiko itong sinusuri ang mga pagsasaayos ng mga file bago simulan ang restart upang matiyak na hindi namamatay si Apache.
Kung ang graceful apachectl ay hindi muling simulan ang iyong server, may ilang iba pang mga bagay na maaari mong subukan.
- restart ang apachectl upang i-restart ang server. Kung ang server ay hindi tumatakbo ito ay nagsimula. Ang command na ito ay nagpapatakbo rin ng isang pagsubok sa pagsasaayos upang matiyak na hindi mamamatay ang Apache kapag nag-restart ito.
- huminto ang apachectl upang itigil ang Apache server
- simulan ang apachectl upang simulan ang Apache server (ihagis ng isang error na mensahe kung tumatakbo ang Apache)
- apachectl configtest upang subukan ang configuration file syntax.
Mga Tip para sa Pag-restart ng Iyong Apache Server:
- Ang reload ng init.d at apachectl ay laging naka-reload ang mga pagsasaayos ng mga file at maganda i-restart ang web server. Pinapayagan ang anumang kasalukuyang mga koneksyon upang makumpleto. Ito ang ginustong diskarte at dapat itong maging una mong subukan.
- restart init.d at muling i-restart apachectl ang mga file ng pagsasaayos at i-restart. Ang anumang mga kasalukuyang koneksyon ay agad na tinapos.
- Kung hindi tumatakbo ang server, sisimulan ito ng mga utos na ito.
- Kung wala sa alinman sa mga utos na ito ang gagawin, dapat mong i-off ang iyong Apache server (pag-down na ito sa loob ng maikling panahon) sa init.d stop o apachectl stop command, maghintay ng hindi bababa sa 10 segundo at pagkatapos ay patakbuhin ang init.d magsimula simulan apachectl simula
- Kung hindi ito gumagana, dapat kang magpatakbo ng isang tseke sa iyong mga file ng pagsasaayos upang matiyak na walang problema sa kanila sa pamamagitan ng pagpapatakbo ng apachectl graceful