Schlagwort-Archive: Apache2

Apache custom error pages

Apache-Servererror_500

Es gibt einen einfachen Weg eigene Server Fehlerseiten zu konfigurieren.

Dazu wird die Apache vhost Datei entsprechend angepasst, durch den Include Befehl kann der Code einfach in jeder gewünschten VirtualHost-Definition hinzugefügt werden und muss nur an einer Stelle gepflegt werden:
Apache custom error pages weiterlesen

Umstieg von Apache2 mpm-prefork auf worker

Ich hatte in den letzten Wochen nach dem Umstieg auf Debian Squeeze immer wieder Probleme mit Apache und dem Arbeitsspeicher. Dieser wurde irgendwann nicht mehr freigegeben, was zu einem vollen Swapfile und einem trägen bis toten System geführt hatte. Nun war es mir also zu blöd und ich habe nach einer Lösung für dieses Problem gesucht.

Das MPM »worker« bietet eine Thread-basierte Implementation und ist der Standard. Es wird besonders empfohlen für Websites mit hohem Verkehrsaufkommen, da es schneller ist als das althergebrachte MPM »prefork« und weniger Speicher beansprucht. Zitat aus Paket

So bin ich also auf die Idee gekommen von mpm-prefork auf mpm-worker umzustellen, damit ich mit dem threadbasierten Apache Arbeitsspeicher sparen kann, was bei mir wie folgt ging:

Umstieg von Apache2 mpm-prefork auf worker weiterlesen

Apache Fehler pcfg_openfile Permission denied

Neulich auf meinem Webserver, kommt folgende Meldung im Apache Errorlog:

[Wed Jun 20 16:10:35 2012] [crit] [client 62.15...]
 (13)Permission denied: /var/www/somedir/.htaccess pcfg_openfile:
 unable to check htaccess file, ensure it is readable

Die Fehlermeldung deutet auf ein Problem mit der .htaccess Datei hin, diese muss aber nicht wirklich exisitieren, vielmehr hat Apache keinen Zugriff auf das Verzeichnis!

Lösung:
Entsprechende Zugriffsrechte für den Webserver setzten (User: www-data).

Apache Fehler pcfg_openfile Permission denied weiterlesen

Curl in PHP5

Wenn folgender Fehler in der Apache Errorlog auftaucht dann fehlt die Erweiterung cURL:

PHP Fatal error:  Call to undefined function curl_init() in /dir/file.php  on line 47

Diese kann unter Debian wie folgt nachinstalliert werden:

apt-get install curl libcurl3 php5-curl
apache2 restart

Quelle:

[HowTo] Install Curl in PHP5 and Apache

Apache Security

Wie kann man seinen Apache-Webserver besser konfigurieren?

Das Ziel soll sein einen möglichst sicheren Apache in einer Produktivumgebung zu konfigurieren.

Die Apache version nicht senden (Set ServerTokens)

Zum Beispiel in der Datei /etc/apache2/sites-available/main

NameVirtualHost *:80
ServerTokens Prod

Die folgenden Werte sind möglich für ServerTokens:

  • ServerTokens Prod displays “Server: Apache”
  • ServerTokens Major displays “Server: Apache/2″
  • ServerTokens Minor displays “Server: Apache/2.2″
  • ServerTokens Min displays “Server: Apache/2.2.17″
  • ServerTokens OS displays “Server: Apache/2.2.17 (Unix)”
  • ServerTokens Full displays “Server: Apache/2.2.17 (Unix) PHP/5.3.5″ (Wenn nichts angegeben wird ist das der Standard)

Die Server Signatur ausschalten

Zum Beispiel in der Datei /etc/apache2/sites-available/main

ServerSignature Off

Apache Security weiterlesen