reapers blog

PHP unter Ubuntu im UserDir
reaper, 11.08.2010

Ein gängiger Weg für das basteln von PHP Skripten und Websieten ist die Verwendung von mod_userdir. Damit kann man im Homeverzeichnis der Nutzer ein Verzeichnis definieren in dem der Webserver nach Daten sucht. normal wird dieses Verzeichnis public_html genannt und ist dann unter der der URL http://host/~user zu erreichen.

Aus Sicherheitsgründen hat man ab Ubuntu 10.04 PHP für diese Nutzer-Verzeichnisse deaktiviert. Um es wieder zum laufen zu bringen hilft ein:

php_admin_value engine On

in einer .htaccess Datei oder will man es global ändern das auskommentieren der folgenden Zeilen:

<IfModule mod_userdir.c>
      <Directory /home/*/public_html>
            php_admin_value engine Off
      </Directory>
</IfModule>

in der Datei /etc/apache2/mods-available/php5.conf.

tags: php ubuntu web

Da hab ich doch in einer .htaccess Datei folgendes gesehen:

AddType application/x-httpd-php php pdf

Wie Gehirnkrank muss man bitte dafür sein. Kein Schwein kann ahnen das man in dieses Verzeichnis was cleverer weise auch noch Download heißt keine PDF-Dateien ablegen kann. Ehrlich dafür gehört der Zuständige kastriert. Allein der Gedanke ein durch ein Skript generiertes PDF aussehen zu lassen wie eine echte Datei indem man sie entsprechend nennt und den Webserver anweist alle PDFs wie ein PHP-Skript zu behandeln lässt mich schaudern.

Wenn man sowas sieht versteht man die Vorurteile gegen PHP-Coder...

tags: development php
Galileo has arrived
reaper, 26.06.2009

Seit heute ist die neue Version der Entwicklungsumgebung Eclipse Galileo (aka Eclipse 3.5) im Umlauf. Ich hab gleich mal das PHP-Bundle ausprobiert und bin angenehm überrascht. Viele Details die ich von den Java Views gewöhnt und in der PHP Ansicht vermisst habe sind jetzt dort mit eingezogen. So werden zum Beispiel endlich alle nachfolgenden Vorkommen einer markieren Variablen angezeigt.

Gefühlt ist die IDE auch schneller geworden (ich hoffe mal auf meinem Arbeits-PC hat sich dann auch der Bug beim Öffnen von Dateien erledigt). Auch wenn Eclipse allgemein auf einem modernen PC mit genug Arbeitsspeicher flüssig läuft sind manche Denkpausen schon recht lang :P Allein das Starten dauerte bei mir hier mit Ganymede sowas wie 30 Sekunden und ist jetzt runter auf 15 Sekunden (nicht das die Startzeit wirklich relevant wäre).

Was mit definitiv fehlt ist eine Intgration von SVN. CVS ist mit dabei aber SVN muss mal durch Subclipse immernoch leicht nachrüsten. Da würd ich mich wirklich wünschen das hier mal was out-of-the-box kommt. CVS ist ja nun wirklich ein Großvater unter den Versionskontrollsystemen :P

an image

tags: tools development php java
PHP auf den Freerunner
reaper, 02.09.2008

Ich persönlich sehe ja den Freerunner noch nicht als Alltagstelefon. Unter Debian kann man sich immerhin alle Software zusammen sammeln die man auch auf dem Desktop als PIM verwendet. Oder zumindest findet man eine gute Auswahl von Mailern, Kalerndern und Browsern. Auch die Lieblingsskriptsprachen findet man in den Repositories. In den Mainline Distributionen wie (Om2008.8 oder Om2007.2) findet man aber eher rudimentäre Tools die meist from scratch entwickelt wurden um den Anforderungen eines Smartphones zu genügen.

In diesem Sinne halte ich es eigentlich für sehr sinnvoll das man dort in den Repositories kein PHP oder Ruby oder Compilersuiten findet. Andere Dinge sind da ja auch wichtiger. Im Rahmen der Community Arbeit hat Derick Rethans nun PHP auf den Freerunner gebracht und eine Demoanwendung mit dem php-gtk Binding erzeugt. Interessant ist dabei aber sein Vorgehen, da die crosscompiling toolchain das compilieren von PHP verweigerte installierte er sich die gnu-coreutils auf dem Freerunner und compilierte dort nativ PHP und das php-gtk Binding.

Auch wenn ich nicht unbedingt das Gefühl habe das PHP performant genug ist um Software für minimalistische embedded Hardware zu entwickeln, ist es doch ein schönes Beispiel für das Potential des Freerunners und der Herangehensweise von vielen PHP Programmierern.

PS.: Die Demoapplikation gibts als Paket zum Download... Nur muss man dafür wenn ich recht verstehe erst PHP auf seinem Freerunner installieren.

tags: openmoko php cynics via: www.golem.de...
Spaß mit Safemode
reaper, 21.11.2005

Der Safemode von PHP ist so eine Erfindung in der Welt von dem man normalerweise nicht viel mitbekommt solange der Server auf dem man arbeitet gut konfiguriert ist. Nun ist aber die Situation das meine Seiten leider nicht auf einem ordentlich konfigurierten Server liegt :( Der Safemode ist hier sehr restriktiv eingestellt wie das auf einem V-Server nunmal so ist und das macht Probleme, vor allem wenn man mittels einer Software Verzeichnisse und Dateien anlegen will.

Und genau das mache ich mit dem Installationsskript vom hcms, und das klappte auch immer wunderbar, zuhause auf meinem Testsystem nur nicht auf dem Server da hab ich permanent mit Rechteproblemen durch den Safemode zu kämpfen. Ich kann zwar mit mkdir ein Verzeichniss anlegen, nur gehört das dann dem www-user und ist nicht mehr ohne weiteres zu löschen :( Und so geht das ganze immer weiter. Daher habe ich mich auf die Suche nach einem Hack gemacht und diesen auch gefunden.

Wann immer man mit Safemode und Dateien arbeiten will, ohne dabei in größere Probleme zu tappen, kann man sich der FTP-Funktionen von PHP bedienen. Mit diesen ist es möglich eine lokale FTP Verbindung aufzubauen und so Dateien zu kopieren oder Verzeichnisse anzulegen. Nicht schön, schon gar nicht effizient, aber was will man machen wenn eine Laufzeitumgebung darauf eingerichtet ist unsaubere Programmierung und Sicherheitsrisiken abzufangen anstatt auf saubere Programmierung zu drängen. PHP ist schön, leicht aber auch verdammt schmutzig und unprofessionell wenn man nicht stark aufpasst :(

tags: php web coding
Meine Stimme gegen Nazis! Nazis raus aus dem Internet Stoppt die Vorratsdatenspeicherung! Jetzt klicken und handeln! rsp-blogs.de
Soweit nicht anders angegeben, stehen die Bilder/Texte unter der Creative Commons Attribution Non-Commercial Share Alike Lizenz. Logos gehoeren dem jeweiligen Eigentümer.