Tips voor het oplossen van problemen met Apache

Probeer Ons Instrument Voor Het Oplossen Van Problemen

Hoe vaak heb je een LAMP-server geïnstalleerd om te ontdekken dat Apache niet goed lijkt te willen werken? Of installeert u een nieuwe module om Apache te zien proberen pagina's als bestand te downloaden, in plaats van ze op het scherm weer te geven?

Er zijn honderdduizend dingen die fout kunnen gaan bij elke webserverinstallatie. Van een nieuwe installatie tot een installatie die al een hele tijd draait, je weet nooit wanneer iets ervoor zorgt dat je webserver verdwaalt. Als het toch gebeurt, is het altijd fijn om te weten dat Occam's Razor meestal van toepassing is.

In deze tutorial vind je wat advies dat je zal helpen bij enkele van de meest voorkomende problemen die kunnen optreden bij een Apache-webserver.

Is uw server echt actief?

Geloof het of niet, dit is met veel beheerders gebeurd. Je schakelt de server uit, doet wat onderhoud en als je de server gaat uitchecken, krijg je fouten. Het eerste dat u natuurlijk doet, is dat controleren /etc/apache2/apache.conf bestand om ervoor te zorgen dat uw syntaxis correct is. Maar het is perfect! Hoe gaat het? Het eerste dat u misschien wilt controleren, is controleren of de server actief is. Maar u wilt niet alleen de opdracht geven om de server te starten of de server opnieuw te laden. Geef in plaats daarvan de opdracht:

sudo /etc/init.d/apache2 status

Die iets zou moeten retourneren als:

* apache is actief (pid 9751).

Als dit niet het geval is, start u de server met:

sudo /etc/init.d/apache2 start

of

sudo apache2ctl start

OPMERKING: als je een distributie zoals Fedora, SuSE of Mandriva gebruikt, moet je dat eerst doen haar naar de root-gebruiker en geef de bovenstaande commando's ZONDER sudo .

Het loopt niet en het zal niet starten

Heb je net wijzigingen aangebracht in je Apache-configuratiebestand? Zijn de wijzigingen correct? Als u het niet zeker weet, kunt u de apache2ctl commando om de syntaxis van uw configuratiebestand te controleren. Dit doe je met het commando:

sudo apache2ctl configtext

Het bovenstaande commando zou moeten rapporteren:

Syntaxis OK

Als u geen OK krijgt, krijgt u informatie die verwijst naar de fouten in uw configuratiebestand.

Apache wil .php-bestanden downloaden!

Dit is een ander veel voorkomend probleem. Wanneer u een nieuwe tool op uw webserver toevoegt (zoals Drupal) en uw configuratiebestand correct is ingesteld, wordt mogelijk geen .php-bestand weergegeven. In plaats daarvan zorgt elke poging om een ​​.php-bestand te bekijken ervoor dat uw browser het bestand probeert te downloaden. Waarom is dit? Apache moet worden geïnformeerd dat bepaalde extensies moeten worden weergegeven, niet gedownload. Dit wordt gedaan vanuit het Apache-configuratiebestand. Open dat bestand (in de Ubuntu-server zal het /etc/apache2/apache2.conf zijn) en zoek eerst naar de volgende regel:

DirectoryIndex index.html

Als dat bestand geen index.php bijna alle sites die php gebruiken, worden onbruikbaar.

De tweede regel om naar te zoeken is:

AddHandler applicatie / x-httpd-php .php

Als je deze regel vindt en er is commentaar op gegeven, zorg er dan voor dat je de opmerking verwijdert door het teken '#' te verwijderen. Als het er niet is, voegt u het toe aan de onderkant van het configuratiebestand.

En, zoals altijd, start u Apache opnieuw wanneer u een wijziging aanbrengt in het configuratiebestand.

Weet waar u problemen kunt zoeken

Ten slotte is het cruciaal dat u weet waar u het eerst moet afslaan als het bovenstaande u niet helpt. Elke keer dat ik een probleem heb met Apache waar Occam's Razor niet van toepassing is, zijn de logbestanden de eerste plaats die ik gebruik.

Als je naar binnen kijkt / Var / log / apache2 vindt u in ieder geval de volgende bestanden:

  • access.log: Hiermee wordt elke verbinding met uw server bijgehouden.
  • error.log: Dit houdt alle fouten bij die optreden met Apache.
  • other_vhosts_access.log: Dit is waar virtuele hosts zullen loggen als de virtuele host geen eigen logbestand heeft gekregen.

Natuurlijk, naarmate uw site evolueert, zullen uw beschikbare logbestanden dat ook doen. Ongeacht wat je erin aantreft / Var / log / apache2 , dat is waar je altijd eerst moet zijn als je problemen hebt. Zelfs voordat je googelt.

Laatste gedachten

Nu zou u enkele van de meer algemene problemen met de Apache-server moeten kunnen oplossen. En als uw probleem niet gebruikelijk is, weet u ook waar u zich moet wenden om aanwijzingen te vinden die u op het juiste pad naar correctie zullen leiden.