Einen lokalen ZendServer unter OSX installieren und konfigurieren

Vor kurzem habe ich einem Freund geholfen, einen lokalen ZendServer zu installieren. Der Freund ist kein Softwareentwickler, arbeitet aber viel mit WordPress, so dass ein lokaler Server sinnvoll ist. Es fiel aber auf, dass die Installation hier und da ein bisschen Expertenwissen erfordert. Zwar lässt sich der Server zunächst mit einem Wizard installieren, aber ganz ohne Kommandozeile lässt sich nicht auskommen.

Daher habe ich mich entschieden, eine Installationsanleitung zu schreiben, auch wenn es schon ein paar gibt (s.u.). Die Anleitung richtet sich an den durchschnittlichen OSX-Benutzer und nicht ausschließlich an Administratoren oder Softwareentwickler.

Warum ZendServer? Welche Version

ZendServer bringt gleichzeitig einen PHP-fähigen Webserver und eine MySQL-Datenbank mit. ZendServer ist daher vergleichbar mit MAMP. Im folgenden geht es um die Installation der Free bzw. Community Edition (gratis). Die aktuelle Version ist 6.3.0.

Download und Installation des ZendServers

http://www.zend.com/de/products/server/downloads

Der Wizard für die Installation ist selbsterklärend.

Verzeichnis für Webserver-Documente anlegen

Verzeichnis, welches http://localhost/ entspricht.

Beispielort:

/Users/bjoerne/Development/WebserverDocuments

Bearbeitung der httpd.conf

Die Datei httpd.conf enthält die Einstellungen für den Webserver. Die Default-Werte passen nicht 100 %ig und es sind geringe Anpassungen notwendig.

Die Datei httpd.conf ist standardmäßig schreibgeschützt. Um sie mit TextEdit bearbeiten zu können, muss TextEdit mit Admin-Rechten gestartet werden. Falls TextEdit bereits auf dem Computer gestartet ist, muss es erst geschlossen werden, bevor der folgende Schritt ausgeführt wird.

Terminal starten: Entweder über Programme -> Dienstprogramme -> Terminal oder per Spotlight -Eingabe "Terminal"

Im Terminal folgendes eingeben

sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit

Passwort des Systembenutzers eingeben.

TextEdit öffnet sich (eventuell im Hintergrund, falls nicht sofort sichtbar über Dock öffnen). Nun die Datei /usr/local/zend/apache2/conf/httpd.conf öffnen. Bei Nachfrage Schreibschutz aufheben. Falls die Datei bzw. der Pfad dorthin (/usr/...) nicht gefunden werden kann, sind eventuell versteckte Dateien ausgeblendet. Hier steht, wie man diese einblendet: http://www.michael-ertel.de/2012/12/17/versteckte-dateien-mac-os-anzeigen/

Änderungen in der Datei (erste Zeile original, zweite Zeile Ersetzung; Benutzername und Server-Verzeichnis entsprechend anpassen)

Listen 10088
Listen 80

DocumentRoot "/usr/local/zend/apache2/htdocs"
DocumentRoot "/Users/bjoerne/Development/WebserverDocuments"

<Directory "/usr/local/zend/apache2/htdocs">
<Directory "/Users/bjoerne/Development/WebserverDocuments">

User daemon
User bjoerne

Group daemon
Group staff

Mit diesen Änderungen läuft der Server auf dem HTTP-Standard-Port, so dass der Server unter http://localhost/ (statt: http://localhost:10088/) erreichbar ist. Außerdem läuft er unter dem eigenen Benutzer und Berechtigungskonflikte können vermieden werden.

Anschließend die Datei speichern und TextEdit komplett schließen. Terminal ebenfalls komplett schließen.

ZendServer konfigurieren

ZendServer öffnen, über Programme oder Spotlight "ZendServer"

Es öffnet sich im Browser ein Webinterface (localhost:10081/ZendServer/)

Beim ersten Aufruf muss der Server initial eingerichtet werden. Dazu startet ein Wizard. Art des Servers ist Development, als admin-Passwort bietet sich auf einer lokalen Installation admin an, ansonsten alle Schritte bestätigen.

Lizenz einrichten

Der Server merkt oben rechts über ein Symbol an, dass die Lizenz ausläuft. Über einen Wizard lässt sich einstellen, dass der Server als Free Edition genutzt werden soll.

ZendFramework-Libraries löschen

Applications -> Libraries öffnen.

Alle nicht benötigten Libraries löschen. Vorteil: Der ZendServer prüft nicht auf Updates dieser Libraries und nervt dadurch nicht

Temporäre Verzeichnisse für Session und Uploads erstellen

Erneut Terminal öffnen. Dort die folgenden Zeilen reinkopieren und jeweils mit Enter bestätigen. Passwort des Systembenutzers eingeben, wenn Nachfrage.

sudo mkdir -p /var/zend/tmp/php/uploads
sudo mkdir -p /var/zend/tmp/php/sessions
sudo chmod -R 777 /var/zend/tmp/

Terminal schließen.

PHP-Einstellungen vornehmen

Im ZendServer-Webinterface Configurations -> PHP öffnen.

Unter date die Eigenschaft date.timezone auf Europe/Berlin setzen

zendserver_config_date

Unter Filesystem and Streams die Eigenschaft upload_tmp_dir auf /var/zend/tmp/php/uploads setzen

zendserver_config_filesystem_and_streams

Unter session die Eigenschaft session.save_path auf /var/zend/tmp/php/uploads setzen

zendserver_config_session

ZendServer neustarten

Über Restart-Icon oben rechts Server neustarten

zendserver_config_restart

Aufruf des Webservers im Browser

Unter http://localhost/ ist der Server erreichbar

Weitere Quellen

Hoffentlich nicht notwendig, hier weitere Quellen zur Installation:

 

bjoerne_com_bjoern_weinbrenner_softwareentwickler_icon_leistungen_02

Lust auf mehr? Als PHP-Entwickler und Softwarearchitekt kann ich Sie in Ihren Projekten unterstützen. Melden Sie sich gerne bei mir.

2017-01-28T13:52:45+00:00 11.10.2013|Tags: , , , |2 Comments

2 Kommentare

  1. Björn Weinbrenner 9. Dezember 2013 um 7:15 Uhr- Antworten

    Um bei der Ausführung von php auf der Kommandozeile php des ZendServers zuverwenden, muss ich folgendes ausführen:
    sudo mv /usr/bin/php /usr/bin/php_old
    sudo ln -s /usr/local/zend/bin/php /usr/bin/php

    Anmerkung: Ich verwende OSX 10.9 (Mavericks) und php war bereits installiert

  2. Björn Weinbrenner 23. März 2014 um 15:09 Uhr- Antworten

    Wer Rails + MySQL + OSX verwenden will, muss eventuell noch einen symbolischen Link einrichten, wie hier beschrieben: http://stackoverflow.com/questions/10557507/rails-mysql-on-osx-library-not-loaded-libmysqlclient-18-dylib
    Im Falle des ZendServers lautete der Kommandozeilenbefehl
    sudo ln -s /usr/local/zend/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib

Hinterlassen Sie einen Kommentar