Apache upgrade : Unknown Authz provider: from

For the record:
If you ever encounter this error while upgrading Apache webserver 2.2 to 2.4:

Unknown Authz provider: fromCode language: JavaScript (javascript)

Then you probably made a mistake replacing:

allow from all Code language: JavaScript (javascript)

with

Require all grantedCode language: PHP (php)

And just replaced allow with Require and not the complete directive, like:

Require from allCode language: JavaScript (javascript)

Then its time for a double facepalm :)

Migrate to Mongolab

Recently i ran into RAM troubles on my vserver for some reasons, i encountered the evil:

Cannot allocate memory at ...

So first i suspected mongodb to use up loads of memory as top showed.

But after some recherche work i learned mongodb only -seems- to use a lot of memory.
see here and here and here
The actual usage was around 20mb RAM, so mongodb was innocent.

The true RAM monsters were some apache and php-fpm zombies, but thats another story.

While suspecting mongodb i thought about outsourcing the mongodb and i found a free and sufficient offer in mongolab.
My interests were on and i gave it a try.
The free version has a limit for up to 240MB storage and since my app is just a small counter it should last for some time.
Continue reading “Migrate to Mongolab”

Lighttpd, Plesk und PHP

Will man auf seinem Server(debian) Lighttpd paralell zu Plesk’s Apache zum laufen kriegen sollte man auf jeden fall PHP als FPM laufen lassen.
Das kommt sich nicht mit dem von Plesk und Apache regierten PHPs in die Quere und ist sowieso schneller und kann auch die Prozesse killen und neuladen.
Falls man mal was in der ini ändern will.

FPM installieren geht so, wie er es dort beschreibt:

Allerdings in der conf den Port nicht als String, sondern numeric:

server.modules   += ( "mod_fastcgi" )

## Start an FastCGI server for php (needs the php5-cgi package)
fastcgi.server    = ( ".php" =>
        (
"localhost" =>
        (
                "host" => "127.0.0.1",
                "port" => 9000
        ))
)

Bleibt noch das Problem mit dem APC Konflikt, falls da jemand eine Lösung weiß, nur her damit.

Man, das war ein kampf ;)
Mal sehen wie lang das hält…

Server Monitoring mit Munin

Da ich ein Kontrollfreak bin ;) wollte ich mal meinen vServer monitoren.
Nach allem was ich so las, scheint wohl Munin das geeignete Tool zu sein.

Also aufgemacht und es installiert:
Munin ist Server-Client mäßig aufgebaut, ich installiere der Einfachkeit halber mal Server und Client (Node) auf der selben Maschine.
Für Debian Lenny geht das ganz einfach über apt-get:

apt-get install munin munin-node

So nun noch das Webinterface umlegen: ich mache dafür eine eigene Subdomain bei einem meiner vHosts über Plesk.
zB munin.nerdpress.org (nein, die url gibts in echt nicht)

jetzt muss noch das www Verzeichnis, welches Munin generiert umkopiert werden in das Subdomain Verzeichnis:

cp -r /var/www/munin/* /var/www/vhosts/nerdpress/subdomains/munin/httpdocs

Continue reading “Server Monitoring mit Munin”

Schau auf die Error_Log

Man sollte sich tatsächlich angewöhnen beim Entwickeln immer eine Console offen zu haben und die error_log zu beobachten.

tail -f /var/log/apache2/error_log

Bekommt man nämlich so einen Fehler in der error_log:

ALERT - configured POST variable limit exceeded - dropped variable ...

… bleibt die Seite meistens ohne Fehlerausgabe trotz E_ALL und es passieren komische Dinge.
Dann kann man schonmal eine ganze Weile damit verbringen ganz woanders zu suchen.
Mit offenem error_log wäre das nicht passiert ;).

Continue reading “Schau auf die Error_Log”

Asus N82j, U80, UL30 Series; Touchpad auschalten unter Ubuntu 10.04

Das für mich als Merkhilfe und eventuell Suchende: Wer sein Touchpad unter Ubuntu via Hotkey abschalten möchte und im Besitz eines neueren Asus-Notebooks ist, wird hier endlich fündig: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/418282 (für mich hat folgender Workaround zuverlässig funktioniert):

This problem is also valid for the ASUS UL30A. The touchpad is seen as an “ImPS/2 Logitech Wheel Mouse”. See in dmesg and by the command “xinput list”. I am using Ubuntu 9.10.

To disable the touchpad the following command can be used:

xinput set-int-prop “ImPS/2 Logitech Wheel Mouse” “Device Enabled” 8 0

To enable use:

xinput set-int-prop “ImPS/2 Logitech Wheel Mouse” “Device Enabled” 8 1

To make the F9 working I did the following:

1. As the F9 does not generate a keycode but an acpi event you cannot assign just a keycode to a script. So I first checked the generated event hotkey code using:
sudo acpi_listen
and pressed F9. This gives 0000006b as event hotkey code.
2. In /etc/acpi/events there is an asus-touchpad event file. This is using the wrong code so I changed it.
3. The script /etc/acpi/assus-touchpad.sh is not correct for this touchpad so I changed it (see attached script)
4. Now send the acpid a SIGHUP signal (or reboot) and the F9 button toggles your touchpad an or off.

Danach kann man via FN + F9 wieder wie gewohnt das Touchpad an- und abschalten.

Upgrade von Etch auf Lenny

Dann habe ich neulich mal meinen vServer upgegradet von Debian Etch auf Lenny, um in den Genuss einer neueren PHP Version zu kommen.
Ein paar Problemchen gabs schon aber es hat geklappt!
Das lief ab wie folgt:

Zunächst einmal Plesk auf neuesten Stand bringen über den Updater von Plesk.

Dann das Debian dist upgrade:
wie hier beschrieben:
Die Liste mit den Quell-Paketen ändern:

# new lenny packages.
deb http://ftp2.de.debian.org/debian/ lenny main contrib non-free
deb http://security.debian.org/ lenny/updates main contrib non-free

# source packages.
deb-src http://ftp2.de.debian.org/debian/ lenny main contrib non-free
deb-src http://security.debian.org/ lenny/updates main contrib non-free

# volatile sources
deb http://volatile.debian.org/debian-volatile etch/volatile main contrib non-free

Dann upgraden
Continue reading “Upgrade von Etch auf Lenny”