Reštartujte Apache na Ubuntu, RedHat, Gentoo a ďalších Linux Distros
Ak hosťujete svoje webové stránky na platforme s otvoreným zdrojovým kódom, je veľmi pravdepodobné, že táto platforma je Apache. Ak je to tak a hostite sa serverom Apache, potom, keď pracujete na úprave súboru Apache httpd.conf alebo iného konfiguračného súboru (napríklad pridanie nového virtuálneho hostiteľa), budete musieť reštartovať Apache tak, aby vaše zmeny sa prejavia. To sa môže zdať strašidelné, ale našťastie to je veľmi jednoduché.
V skutočnosti to môžete urobiť za približne jednu minútu (nezohľadňuje sa čas potrebný na prečítanie tohto článku, aby ste získali krok za krokom pokyny).
Začíname
Ak chcete reštartovať webový server Linux Apache, najlepší spôsob je použiť príkaz init.d. Tento príkaz je k dispozícii na mnohých distribuciách Linuxu vrátane Red Hat, Ubuntu a Gentoo. Tu je postup, ako to urobíte:
- Prihláste sa na svoj webový server pomocou SSH alebo telnetu a uistite sa, že váš systém obsahuje príkaz init.d. Zvyčajne sa nachádza v adresári / etc, takže zoznam adresára:
ls / etc / i *
- Ak váš server používa init.d, dostanete zoznam inicializačných súborov v určenom priečinku. V ďalšom priečinku vyhľadajte apache alebo apache2. Ak máte init.d, ale nemáte inicializačný súbor Apache, prejdite na časť tohto článku s názvom "Restartovanie vášho servera bez Init.d", inak môžete pokračovať.
- Ak máte init.d a inicializačný súbor Apache, môžete Apache reštartovať pomocou tohto príkazu:
/etc/init.d/apache2 reload
Ak chcete spustiť tento príkaz, budete musieť sudo použiť ako root.
Možnosť na opätovné načítanie
Použitie možnosti opätovného načítania je najlepší spôsob, ako reštartovať server Apache, pretože udržuje server v prevádzke (proces nie je zabitý a reštartovaný). Namiesto toho jednoducho obnoví súbor httpd.conf, ktorý je zvyčajne všetko, čo chcete v tomto prípade urobiť.
Ak opcia na opätovné načítanie pre vás nefunguje, môžete sa pokúsiť použiť aj nasledujúce príkazy:
- /etc/init.d/apache2 restart - tento príkaz zabije serverový proces a potom ho reštartuje
- /etc/init.d/apache2 stop - tento príkaz zabije proces servera
- /etc/init.d/apache2 start - tento príkaz spustí server (a ak sa server už spustí, zobrazí sa chybové hlásenie)
Reštartovanie servera bez Init.d
OK, takže sme tu požiadali preskočiť, ak váš server nemá init.d. Ak ste to vy, nezúfajte, stále môžete reštartovať server. Musíte to urobiť ručne príkazom apachectl. Tu sú kroky pre tento scenár:
- Prihláste sa na server webového servera pomocou SSH alebo telnetu
- Spustite ovládací program Apache:
apachectl ladný
Ak chcete spustiť tento príkaz, budete musieť sudo použiť ako root.
Apachectl graceful príkaz hovorí Apache, že chcete reštartovať server elegantne bez prerušenia akýchkoľvek otvorených pripojení. Automaticky kontroluje konfiguračné súbory pred spustením reštartu, aby sa ubezpečil, že Apache nezomrie.
Ak apachectl elegantný nereštartuje váš server, existuje niekoľko ďalších vecí, ktoré môžete vyskúšať.
- apachectl reštartovať na reštartovanie servera. Ak server nie je spustený, spustí sa. Tento príkaz tiež vykoná test konfigurácie, aby sa uistil, že Apache pri reštartovaní nezomrie.
- apachectl stop zastaviť server Apache
- apachectl začne spustiť server Apache (pri spustení aplikácie Apache sa zobrazí chybové hlásenie)
- apachectl configtest na testovanie syntaxe konfiguračného súboru.
Tipy pre reštartovanie vášho servera Apache:
- init.d reload a apachectl graceful opätovne načíta konfiguračné súbory a elegantne reštartovať webový server. Súčasné pripojenia sa môžu dokončiť. Toto je preferovaný prístup a malo by to byť to, čo vyskúšate ako prvé.
- init.d restart a apachectl restart obnoví konfiguračné súbory a reštartuje. Všetky aktuálne pripojenia sa okamžite ukončia.
- Ak server nie je spustený, budú tieto príkazy spustené.
- Ak žiadny z týchto príkazov nefunguje, mali by ste vypnúť server Apache (krátko ho zložiť) pomocou príkazu init.d stop alebo apachectl stop, počkajte aspoň 10 sekúnd a spustite init.d start start apachectl start
- Ak to nefunguje, mali by ste spustiť kontrolu vašich konfiguračných súborov, aby ste sa uistili, že s nimi nie je problém tým, že spustíte apachectl ladný