02Sep
Tags: Apache | Webserver
Kommentieren
Um die Ausführung von PHP und anderen Scriptsprachen (z.B. Python) im aktuellen Verzeichnis, sowie in Unterordnern zu verbieten, einfach eine Datei .htaccess
in das aktuelle Verzeichnis legen.
In der Datei sollte Folgendes stehen:
|
<FilesMatch "\.(php|php4|php5|pl|inc|py)$"> deny from all </FilesMatch> |
02Dez
Tags: Apache | Betriebssystem | Debian (Linux) | Raspbian (Raspberry Pi) | Ubuntu | Webserver
Kommentieren
Um einen Server laufend zu überwachen, beispielsweise um Unterbrechungen in der Erreichbarkeit oder die Performance zu untersuchen, kann folgendes Script helfen:
|
#!/bin/bash echo "" > ps.log echo "" > uptime.log echo "" > apache-status.log while true do echo `date` uptime >> uptime.log (top -b -c -d 30 -w | head -n 15) >> ps.log (www-browser --width=160 -dump http://localhost:7080/server-status) >> apache-status.log sleep 30 done |
Es macht alle 30 Sekunden eine Momentaufnahme von Auslastung, Uptime und Apache-Serverstatus. Damit kann dann auch nachträglich festgestellt werden, wo möglicherweise Probleme liegen.
apache, apache2, debian, monitoring, server, server-status, uptime
19Nov
Tags: Allgemein | Apache | Debian (Linux) | Ubuntu | Webserver
Kommentieren
Nach Freischalten des Zugriffs auf die Apache-Status-Seite von mod_status
in der Datei /etc/apache2/mods-enabled/status.conf
funktioniert zwar der Zugriff von den freigegebenen IPs, der Aufruf der Statusseite von localhost (z.B. per lynx
oder apache2ctl status
) schlägt fehl:
|
$ sudo apache2ctl status Looking up localhost Making HTTP connection to localhost Alert!: Unable to connect to remote host. lynx: Can't access startfile http://localhost/server-status 'www-browser -dump http://localhost:80/server-status' failed. Maybe you need to install a package providing www-browser or you need to adjust the APACHE_LYNX variable in /etc/apache2/envvars |
Das Problem ist, dass der Apache in Plesk bei Kombination mit nginx auf Port 7080 und nicht auf Port 80 horcht. Es muss daher ein manueller Abruf der Daten (also mit über apache2ctl status
) geschehen:
|
www-browser -dump http://localhost:7080/server-status |
Anstatt apache2ctl status
kann einfach dieser Befehlt genutzt werden, um den Status des Apache abzufragen und z.B. zu loggen.
Quellen:
apache, apache2ctl, apache2ctl status, mod_status, server-status
22Jun
Tags: Allgemein | Apache | Debian (Linux) | PHP | Webserver
Kommentieren
Dieser Fehler besagt, dass die Extension „yaml“ nicht geladen wurde. Dies kann man beheben, indem man in der entsprechenden php.ini (z.B. /etc/php5/apache2/php.ini
) die Zeile
hinzufügt und anschließend der Webserver neu startet.
Als Position in der php.ini
bietet sich der folgende Bereich an:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
;;;;;;;;;;;;;;;;;;;;;; ; Dynamic Extensions ; ;;;;;;;;;;;;;;;;;;;;;; ; If you wish to have an extension loaded automatically, use the following ; syntax: ; ; extension=modulename.extension ; ; For example, on Windows: ; ; extension=msql.dll ; ; ... or under UNIX: ; ; extension=msql.so ; ; ... or with a path: ; ; extension=/path/to/extension/msql.so ; ; If you only provide the name of the extension, PHP will look for it in its ; default extension directory. ; extension=yaml.so |
extension, php, php.ini, yaml, yaml.so, yaml_parse_file
27Apr
Tags: Apache | Webserver
Kommentieren
Fehlt auf einer Website das ico-Favicon (/favicon.ico), so wird bei jedem Request (Browser machen diesen Request automatisch) eine Fehlermeldung in das Apache-Error-Log geschrieben. Das erschwert nicht nur die Übersicht, sondern bläht die Datei auch unnötig auf. Eine solche Meldung im Folgenden:
File does not exist: /var/www/htdocs/favicon.ico
Um diese Meldung zu unterbinden, muss in der .htaccess nur das Folgende eingefügt werden:
Redirect 404 /favicon.ico
Anschließend werden die Requests nicht mehr ins Error-Log geschrieben.
09Apr
Tags: Apache | Debian (Linux)
Kommentieren
Anlässlich des „SSL Heartbleed“-Bugs aktualisierte ich alle Systeme, was soweit so automatisch auch ganz gut funktionierte. Lediglich ein auf SSL betriebenes MediaWiki klagte über nicht geladene Script- und Style-Ressourcen, die das visuelle Bild komplett zerstörten. Mein Chrome meldete in der Konsole stets ERR_CONNECTION_RESET
.
Nach einigen Tests und Recherchen war das Problem leider nicht ausfindig zu machen. Auch ein Deaktivieren des mod_pagespeed
, mehrfache Neustarts des Apache und eine Überprüfung der maximalen Verbindungsanzahl brachte mich nicht weiter, bis ich auf mod_spdy
stieß, was ja in direkter Verbindung mit SSL steht. Nach kurzer Recherche hieß es auf der Projektseite (https://code.google.com/p/mod-spdy/):
SECURITY UPDATE (8 Apr 2014): All mod_spdy users should upgrade to mod_spdy 0.9.4.2 immediately to fix the heartbleed bug in mod_spdy’s linked version of OpenSSL. See issue 85 for details.
Eine temporäre Deaktivierung bzw. Aktualisierung des Moduls brachte dann auch schon das MediaWiki wieder zum Laufen.
ERR_CONNECTION_RESET, mod_spdy, SPDY, SSL, SSL Heartbleed
15Mrz
Tags: Apache | Debian (Linux) | Webserver
Kommentieren
Innerhalb der „Directory“ Direktiven Folgendes angeben:
|
Order Deny,Allow Aeny From All Allow From 192.168.1 Allow From 82.65.156.12 |
Hiermit werden nur die IPs
für den Zugriff freigegeben.