Benutzer-Werkzeuge

Webseiten-Werkzeuge


tools:local-dev-yosemite

Dies ist eine alte Version des Dokuments!


Lokale Entwicklungsumgebung unter Mac OS X Yosemite (10.10)

Diese Anleitung beschreibt die Einrichtung einer lokalen Web-Entwicklungsumgebung auf dem eigenen Mac. Sie beinhaltet auch die Installation von Komponenten, die für TYPO3 benötigt werden (z.B. Graphicsmagick).
Am Ende dieser Seite habe ich die verschiedenen Quellen für diese Sammlung notiert.

1. Xcode

Das Programm selbst benötigt man möglicherweise nicht, aber es bringt einige nützliche Bibliotheken und Tools mit, z.B. git.

Xcode kann kostenlos im App Store heruntergeladen werden. Nach der Installation muss noch die Lizenz akzeptiert werden, wahlweise bei einem Programmstart oder über die Kommandozeile (xcodebuild -license).


2. Homebrew

Homebrew ist eine praktische Paketverwaltung, mit der viele Programme einfach installiert und aktualisiert werden können.

Installation über das Terminal:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

3. dnsmasq

Mit diesem Domain Name System (DNS) können unsere localhost-Websites mit praktischen Domains aufgerufen werden, z.B. http://kunde1.dev/.

Die folgenden Befehle installieren das Programm, erstellen benötigte Ordner und verweisen alle Anfragen zur .dev Top Level Domain zu unserem localhost.

Terminal:

brew install dnsmasq
cd $(brew --prefix)
mkdir etc
echo 'address=/.dev/127.0.0.1' > etc/dnsmasq.conf
sudo cp -v $(brew --prefix dnsmasq)/homebrew.mxcl.dnsmasq.plist /Library/LaunchDaemons
sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.dnsmasq.plist
sudo mkdir /etc/resolver
sudo bash -c 'echo "nameserver 127.0.0.1" > /etc/resolver/dev'

4. Root-Verzeichnis

Wo die Websites lokal gespeichert werden, bleibt jedem selbst überlassen. Ich gehe hier von einem Ordner /www direkt auf der Macintosh HD aus. Die Ordnerstruktur darin sieht folgendermaßen aus:

www/
  sites/
    kunde1/
      assets/ *für Quelldateien und andere Dokumente*
      wwwroot/ *beinhaltet die eigentliche Website*
      
    kunde2/
      assets/
      wwwroot/
        index.php
        typo3/
        typo3_src/
        [etc]
        
    phpmyadmin/ *wird weiter unten eingerichtet*

Wer es anders einrichtet muss daran denken, einige Pfade aus dieser Anleitung anzupassen, z.B. in der httpd-vhosts.conf!


5. PHP

OS X beinhaltet bereits eine PHP-Version. Ich verwende aber lieber eine eigene Version, die ich über Homebrew installiere.

Terminal:

brew tap homebrew/dupes
brew tap homebrew/versions
brew tap homebrew/homebrew-php
brew install php56
brew install php56-gmagick

GraphicsMagick

Im Anschluss installiere ich direkt GraphicsMagick, was von TYPO3 zur Bildbearbeitung benötigt wird:

brew install php56-gmagick

PHP.ini

Speicherort: /usr/local/etc/php/5.6/

Zentrale Konfigurationsdatei für PHP. Folgende Anpassungen sind empfohlen, besonders in Hinblick auf die Verwendung von TYPO3:

max_execution_time = 240
always_populate_raw_post_data = -1
max_input_vars = 1500

6. Apache HTTP Server

OS X bringt auch schon einen Apache mit – dieser muss für unsere Zwecke nur noch etwas angepasst werden.

Apache starten (Terminal):

sudo apachectl start

httpd.conf

Speicherort: /private/etc/apache2/httpd.conf

Die Apache-Konfigurationsdatei. Folgende Zeilen müssen mit # auskommentiert werden:

<Directory />
    AllowOverride none
    Require all denied
</Directory>

Diese Zeilen müssen aktiviert bzw. hinzugefügt werden:

LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
Include /private/etc/apache2/extra/httpd-vhosts.conf

Zudem wird mit dieser Zeile das eben installierte PHP-Modul geladen:

LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so

httpd-vhosts.conf

Speicherort: /private/etc/apache2/extra/httpd-vhosts.conf

Ergänzende Konfigurationsdatei. Der Inhalt der bereits vorhandenen Datei kann komplett auskommentiert oder gelöscht werden. Hinein gehört dies:

<Directory "/www">
  Options Indexes MultiViews FollowSymLinks
  AllowOverride All
  Require all granted
</Directory>

<Virtualhost *:80>
  VirtualDocumentRoot "/www/sites/%1/wwwroot"
  ServerName sites.dev
  ServerAlias *.dev
  UseCanonicalName Off
</Virtualhost>

Im Zusammenspiel mit dem weiter oben installierten dnsmasq sorgt diese Konfiguration dafür, dass jede Website, die im Ordner /www/sites/ liegt und die Struktur /kundenname/wwwroot besitzt, mit der URL http://kundenname.dev/ aufgerufen werden kann. Ergänzungen für neue Websites sind so unnötig.

Anschließend muss der Apache im Terminal neu gestartet werden:

sudo apachectl restart

7. MySQL

Zuerst wird MySQL per Homebrew installiert, danach der „MySQL 2002 (HY000) Socket Error“ behoben.

Terminal:

brew install mysql

sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

Nun werden mit diesem Befehl Sicherheitseinstellungen vorgenommen, z.B. indem ein Passwort für den Root-Account von MySQL vergeben wird.

Terminal:

mysql_secure_installation

Danach sorgen wir noch dafür, dass MySQL nach einem Neustart automatisch gestartet wird:

Terminal:

ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents

my.cnf

Anschließend wird die Default-Konfiguration von MySQL an neue Stelle kopiert und umbenannt.

Terminal:

sudo mkdir /etc/mysql
sudo cp -v $(brew --prefix mysql)/support-files/my-default.cnf /etc/mysql/my.cnf

Speicherort: /etc/mysql/my.cnf

Die folgenden Einstellungen in der my.cnf sind z.B. für TYPO3 wichtig. Es darf kein sql_mode gesetzt sein!

innodb_buffer_pool_size = 128M
sql_mode=

8. phpMyAdmin

phpMyAdmin kann von der offiziellen Website heruntergeladen werden; das englische ZIP-Archiv ist voll ausreichend. Das ZIP entpacken und die Inhalte in folgenden Ordner verschieben: /www/sites/phpmyadmin/wwwroot/

Anschließend wird ein Ordner für die Konfiguration erstellt und die nötigen Rechte zugewiesen.

Terminal:

mkdir /www/sites/phpmyadmin/wwwroot/config
chmod o+w /www/sites/phpmyadmin/wwwroot/config

Im Browser nun http://phpmyadmin.dev/setup/ öffnen.

  • Den Button „New server“ anklicken
  • Direkt in den Reiter „Authentication“ wechseln
    • dort als User for config auth root eintragen, falls nicht schon vorhanden
    • als Password for config auth das Passwort eingeben, welches bei der Installation von MySQL vergeben wurde
    • Unten auf „Apply“ klicken
  • Zurück im Overview, muss auch hier noch einmal der Button „Save“ betätigt werden.

Dies erstellt eine config.inc.php im config-Ordner von phpMyAdmin. Diese Datei wird direkt in den Ordner wwwroot von phpMyAdmin verschoben. Danach kann der config-Ordner gelöscht werden.

Das wars schon. Nun ist phpMyAdmin unter http://phpmyadmin.dev/ erreichbar; mit den hinterlegten Zugangsdaten kann man sich einloggen und seine Datenbanken anlegen und verwalten.


9. E-Mail-Versand

Kontaktformulare versenden E-Mails. TYPO3 auch. Mit Hilfe von Postfix wird dies lokal möglich (eine Internetverbindung ist weiterhin erforderlich!).


10. Cronjobs


Quellen

Dies basiert zuallererst auf der Anleitung von Chris Mallinson, mit Ergänzungen von coolestguidesontheplanet.com.

Dazu kommt die Postfix-Anleitung von Ander Ustarroz sowie der Cronjob-Beitrag von wakatara.com.

Der Rest entstammt den Manuals der installierten Programme und diversen Stack Overflow-Topics.

tools/local-dev-yosemite.1449936717.txt.gz · Zuletzt geändert: 2015/12/12 17:11 von admin