Tipy na riešenie problémov s Apache
- Kategórie: Vývoj
Koľkokrát ste nainštalovali server LAMP iba na zistenie, že sa zdá, že Apache nechce bežať správne? Alebo nainštalujete nový modul iba na zobrazenie toho, ako sa Apache pokúša sťahovať stránky ako súbor, namiesto ich zobrazovania na obrazovke?
Pri každej inštalácii webového servera sa môže vyskytnúť sto tisíc vecí. Od novej inštalácie po inštaláciu, ktorá už beží dlhú dobu, nikdy neviete, kedy niečo spôsobí, že váš webový server zablodí. Keď sa to stane, vždy je príjemné vedieť, že zvyčajne sa používa systém Occam's Razor.
V tomto návode nájdete niekoľko rád, ktoré vám pomôžu vyriešiť niektoré z najbežnejších problémov, ktoré sa môžu objaviť na webovom serveri Apache.
Je váš server skutočne spustený?
Verte tomu alebo nie, stalo sa to mnohým administrátorom. Zrušíte server, vykonáte určitú údržbu a keď idete skontrolovať server, vyskytujú sa chyby. Prvé, čo samozrejme robíte, je skontrolovať to /etc/apache2/apache.conf súbor, aby ste sa uistili, že je syntax správna. Ale je to perfektné! Čo sa deje? Najprv by ste mali skontrolovať, či je server spustený. Nechcete však iba vydať príkaz na spustenie servera alebo jeho opätovné načítanie. Namiesto toho zadajte príkaz:
sudo /etc/init.d/apache2 status
Čo by malo vrátiť niečo ako:
* Apache beží (pid 9751).
Ak nie, spustite server buď:
sudo /etc/init.d/apache2 start
alebo
sudo apache2ctl start
POZNÁMKA: Ak používate distribúciu ako Fedora, SuSE alebo Mandriva, musíte najprv jeho užívateľovi root a vydať vyššie uvedené príkazy BEZ POUŽITIA sudo ,
Nie je spustený a nezačne sa to
Vykonali ste iba zmeny v konfiguračnom súbore Apache? Sú zmeny správne? Ak si nie ste istí, môžete použiť apache2ctl príkaz na kontrolu syntaxe vášho konfiguračného súboru. To sa deje pomocou príkazu:
configtext sudo apache2ctl
Vyššie uvedený príkaz by mal hlásiť:
Syntax je v poriadku
Ak sa vám nezobrazí OK, získate informácie, ktoré poukazujú na chyby v konfiguračnom súbore.
Apache chce sťahovať súbory .php!
Toto je ďalší bežný problém. Ak na webový server pridáte nový nástroj (napríklad Drupal), ak je váš konfiguračný súbor nastavený správne, žiadny súbor .php sa nemusí zobraziť. Namiesto toho sa pri každom pokuse o zobrazenie súboru .php bude váš prehliadač snažiť súbor prevziať. Prečo je toto? Apache musí byť informovaný o tom, že určité rozšírenia majú byť zobrazené, nie stiahnuté. To sa deje z konfiguračného súboru Apache. Otvorte tento súbor (na serveri Ubuntu to bude /etc/apache2/apache2.conf) a najprv vyhľadajte nasledujúci riadok:
DirectoryIndex index.html
Ak tento súbor neobsahuje index.php takmer všetky stránky, ktoré používajú php, sa stanú zbytočnými.
Druhý riadok, ktorý treba vyhľadať, je:
Aplikácia AddHandler / x-httpd-php .php
Ak nájdete tento riadok a je vypnutý, uistite sa, že ste ho zrušili odstránením znaku „#“. Ak tam nie je, pridajte ho do spodnej časti konfiguračného súboru.
A ako vždy, keď vykonáte zmenu konfiguračného súboru, reštartujte Apache.
Vedieť, kde hľadať problémy
Nakoniec je dôležité, aby ste vedeli, kam sa najskôr otočiť, keď vám vyššie uvedené kroky nepomôžu. Kedykoľvek mám problém s Apache, kde sa neaplikuje Razcam spoločnosti Occam, na prvom mieste, kam sa obrátim, sú protokolové súbory.
Ak sa pozriete dovnútra / Var / log / apache2 nájdete aspoň tieto súbory:
- access.log: Sleduje každé pripojenie k vášmu serveru.
- error.log: Sleduje všetky chyby, ktoré sa vyskytnú pri Apache.
- other_vhosts_access.log: Toto je miesto, kde sa virtuálni hostitelia prihlásia, keď virtuálnemu hostiteľovi nebol predpísaný vlastný súbor denníka.
S vývojom vašich stránok sa samozrejme budú vyvíjať aj vaše dostupné protokolové súbory. Bez ohľadu na to, čo nájdete / Var / log / apache2 , na tomto mieste by ste sa mali vždy najprv otočiť, keď máte problémy. Ešte predtým, ako Google.
Záverečné myšlienky
Teraz by ste mali byť schopní zvládnuť niektoré z najbežnejších problémov so serverom Apache. A ak váš problém nie je bežný, viete tiež, kam sa obrátiť, aby ste našli stopy, ktoré vás dovedú po správnej ceste k náprave.