Debugging NGINX location regex-rules

Nginx has unfortunately no really usable „rewrite log“ for regex location matches. But you can create your own small (but sometimes very useful) debug output:

    location ~ ^/(.*?)/(.*)  {
 
        return 200 'Debug: 1:$1  2:$2';
        add_header Content-Type text/plain;
 
        # try_files $uri /$1/index.php?$args;
    }

Nginx now simply returns the generated content:

Debug: 1:xxxxx  2:yyyyy

The add_header statement is used to force text-output if you’re debugging using a web-browser (otherwise a download would be created).

Links August 2015

A bit Elasticsearch dominated this time 😉

Bonny, Clyde und mein iPhone

Der Moment

Sommer 2015, Rock am Ring in Mendig. 5. Juni. 22:45 Uhr. Hitze. Die Die Toten Hosen spielen seit 45min. Bin 2 Meter von der Bühne entfernt. Etwas verschnaufen. Es kommt jetzt „Steh auf wenn Du am Boden bist“. Ruhiges Intro. Die Menge ruft: „Hinsetzen, Hinsetzen“. Campino zentral vor mir. Bin in der Hocke, spüre noch das Handy in der Seitentasche meiner kurzen Hose – Knöpfe sind zu. Refrain. In diesen 10 Sekunden passiert es. Beim Aufstehen, beim Abgehen. Es ist weg. Meine Hand greift ins leere. Nein, es ist nicht herausgefallen. Ich weiss, Smartphones auf einem Konzert sind willkommenes Diebesgut. Habe „permanent“ eine Hand auf der Tasche gehabt. War drauf vorbereitet. Leider nicht gut genug. Sie sind einfach schneller: Absolute Profis. Genau der richtige Moment:

Ich erinnere mich später noch, dass ca. 15 Minuten vorher einer hinter mir rief: „Verdammt, mein Handy ist weg“ – wir hatten alle noch um uns auf dem Boden geschaut um zu suchen. Wie Naiv…

Direkt nach dem Konzert sperre ich mein Handy über die „Find my iPhone“ App auf dem Gerät eines Bekannten. Es hatte sich aber schon nicht mehr gemeldet.

Der nächste Morgen

Am nächsten Morgen gehe ich zum Fundbüro bzw. der Polizeistation auf dem Festival. Während ich dort sitze und Anzeige erstatte, kommen 2-3 weitere Personen herein mit dem selben Problem: Teures Smartphone, Hosen, Vorne im Pit. Der nette Polizist macht mir wenig Hoffnung – ich solle aber dennoch die IMEI nachreichen. Kein Problem, diese steht ja z.B. auf der Originalverpackung zuhause. Bonny, Clyde und mein iPhone weiterlesen

Links November 2014

Custom routes in OpenVPN client

Um vom Server gepushte Routen zu ignorieren und nur eigene im VPN-Client zu verwenden, genügen folgende Zeilen in der openvpn.conf des Clients:

route-nopull
route 192.168.23.0 255.255.255.0

Ich nutze dies hier mit Tunnelblick auf dem Mac um bei der OpenVPN Config der Astaro wahlweise nicht den gesamten Traffic durchs VPN zu schicken.

PHP: error_reporting setting in apache config

Schöner Denkfehler.

In der php.ini setzt man die error_reporting Stufen mittels Bitverknüpfung über Konstanten (Liste):

php_admin_value error_reporting E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED

Um für einen bestimmten vhost im Apache abweichende Werte zu setzen, gibt es die Settings „php_admin_value“ und „php_admin_flag“. Kommt man jedoch (wie ich) auf die Idee es wie in der php.ini üblich einzutragen, erhält man nicht das gewünschte Ergebnis. Grund ist, dass PHP an dieser Stelle die Konstanten nicht auswerten kann.

# falsch
php_admin_value error_reporting E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
 
#richtig
php_admin_value error_reporting 22519