Reminder: Linux Rechte und Web-Entwicklung

Wow, endlich eine Lösung um sowohl dem Entwickler als auch dem Server-Prozess Rechte auf Dateien und Verzeichnisse zu geben:

setfacl -m u:www-data:rwx -m u:username:rwx cache logs

und vor allem

setfacl -m u:defaut:www-data:rwx -m u:default:username:rwx cache logs

um auch die neuen Dateien entsprechend einzurichten. Letzteres funktionierte bei mir unter ArchLinux nicht. Hab aber nicht weiter recherchiert, ob das distributions-abhängig ist. Oder ein Fehler in der Mail war, aus der ich den Tipp entnommen hatte.
Jedenfalls sehen die entsprechenden Zeilen unter Arch wohl so aus:

sudo setfacl -d -m u:www-data:rwx cache logs

bzw.

sudo setfacl -d -m u:username:rwx cache logs

AMP – Setup unter Windows, Update von Teil 1

Mein Windows System ist jetzt ein Windows 7 Ultimate 64bit. Also gibt es hier ein Update vom Teil 1 um auch die 64bit (x64) – Versionen zu installieren.

Beginnen werde ich wieder (ja, ok, die restlichen HOWTOs fehlten eh noch) mit dem Apache. Mögliche Binary-Pakete finden wir bei blackdot.be oder apachehaus.com . Ich entscheide mich für letztere, da diese wieder mit dem VS 2008 compiliert wurde.

Kurz gefasst:

  1. Visual C++ 2008 SP1 Redistributable: 64bit Version
  2. Apache von apachehaus.com entpacken
  3. Dieser Apache ist vorkonfiguriert für die Default-Location [c:]/Apache22. Näheres siehe oben bzw. im mitgelieferten Readme.
  4. Start und Installation wie oben (oder siehe ebenfalls das Readme).

Et voila!

AMP – Setup unter Windows, Teil 1: Apache

Da ich auch durch Trainings immer wieder mit der Situation PHP-Entwicklung unter Windows konfrontiert werde – persönlich entwickle ich natürlich lieber unter Linux -, fasse ich (auch als eigene Gedankenstütze) die Installation eines PHP-Developmentstacks zusammen – und zwar nicht als Komplettpaket sondern einzeln. Dabei lernt man/ich auch immer wieder etwas über die Konfiguration.

Der Webserver

Am A in AMP erkennt man meine Entscheidung: Apache
Der einfachste Grund liegt bei mir beim Hosten: ich habe keinen Windows Server.

Da wir später ein PHP dazupacken, bevorzuge ich den ApacheLounge-Build (unter Downloads zufinden). Dieser Build ist oft sogar schneller da als der offizielle Apache Software Foundation Windows-Build. Und im Gegensatz zu diesem mit einem Visual Studio 2008 kompiliert gegen ein aktuelles Windows SDK. Das bringt Vorteile in Richtung Geschwindigkeit, Memory Management und Stabilität (laut Website). Auf jeden Fall erlaubt es uns später auch den VC9-Build von PHP zu wählen.

Desweiteren installieren wir hier manuell aus einem Zip heraus. Problemlos ist also auch eine Installation auf einen Stick oä möglich. Und ich kann den kompletten Setup auch einfacher zum Kunden mitnehmen.

Zur Installation

  1. Visual C++ 2008 SP1 Redistributable
    Diese Installation ist zunächst zwingend vorher durchzuführen. Download hier
  2. Apache entpacken
    Zip-File von apachelounge.com (siehe oben) entpacken. Zum Beispiel direkt nach c: oder einen belibigen anderen Ort.
  3. Apache konfigurieren
    In der Datei /Apache2/conf/httpd.conf folgende Einstellungen vornehmen (Nachlesbar mit Zeilennummern unter Install Apache on Windows ):
    – ServerRoot anpassen, falls ein anderer Ort als c: gewählt wurde. Ebenso mit dem ScriptAlias und der folgenden Directory-Direktive verfahren. Das DocumentRoot-Verzeichnis lege ich an einen ganz anderen Ort außerhalb der Installation. Also auch dieses gebenenfalls anpassen (und wiederum die entsprechende Directory-Direktive).
    – Rewrite-Module laden
    – ServerName konfigurieren (localhost:80)
    – Im Web-Root AllowOverride All setzen (von None)
  4. Testen
    cd Apache2bin
    httpd -t
  5. Installation als Dienst
    httpd -k install
    Mit dem ApacheMonitor (ebenfalls im bin-Ordner) lässt sich der Dienst bequem steuern.