Benutzer-Werkzeuge

Webseiten-Werkzeuge


tools:local-dev-yosemite

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
tools:local-dev-yosemite [2015/12/12 17:31] – [httpd.conf] admintools:local-dev-yosemite [2017/12/16 14:32] (aktuell) – [Ersetzen der .dev Domain durch .test] admin
Zeile 25: Zeile 25:
 ===== 3. dnsmasq ===== ===== 3. dnsmasq =====
  
-Mit diesem **Domain Name System** (DNS) können unsere localhost-Websites mit praktischen Domains aufgerufen werden, z.B. [[http://kunde1.dev/|http://kunde1.dev/]].+Mit diesem **Domain Name System** (DNS) können unsere localhost-Websites mit praktischen Domains aufgerufen werden, z.B. [[http://kunde1.test/|http://kunde1.test/]].
  
-Die folgenden Befehle installieren das Programm, erstellen benötigte Ordner und verweisen alle Anfragen zur **.dev** //Top Level Domain// zu unserem localhost.+Die folgenden Befehle installieren das Programm, erstellen benötigte Ordner und verweisen alle Anfragen zur **.test** //Top Level Domain// zu unserem localhost.
  
 **Terminal:** **Terminal:**
Zeile 34: Zeile 34:
 cd $(brew --prefix) cd $(brew --prefix)
 mkdir etc mkdir etc
-echo 'address=/.dev/127.0.0.1' > etc/dnsmasq.conf+echo 'address=/.test/127.0.0.1' > etc/dnsmasq.conf
 sudo cp -v $(brew --prefix dnsmasq)/homebrew.mxcl.dnsmasq.plist /Library/LaunchDaemons sudo cp -v $(brew --prefix dnsmasq)/homebrew.mxcl.dnsmasq.plist /Library/LaunchDaemons
 sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.dnsmasq.plist sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.dnsmasq.plist
 sudo mkdir /etc/resolver sudo mkdir /etc/resolver
-sudo bash -c 'echo "nameserver 127.0.0.1" > /etc/resolver/dev'+sudo bash -c 'echo "nameserver 127.0.0.1" > /etc/resolver/test'
 </code> </code>
 +
 +<WRAP center round important 100%>
 +Früher habe ich hier noch die **.dev** Domain verwendet. [[https://ma.ttias.be/chrome-force-dev-domains-https-via-preloaded-hsts/|Google erzwingt aber in Chrome seit kurzem HSTS für diese Domain]], daher bin ich jetzt auf **.test** umgestiegen.
 +</WRAP>
 +
  
 ---- ----
Zeile 79: Zeile 84:
 brew tap homebrew/homebrew-php brew tap homebrew/homebrew-php
 brew install php56 brew install php56
-brew install php56-gmagick 
 </code> </code>
  
Zeile 91: Zeile 95:
 ==== PHP.ini ==== ==== PHP.ini ====
  
-Speicherort: ''/usr/local/etc/php/5.6/''+Speicherort: ''/usr/local/etc/php/5.6/php.ini''
  
 Zentrale Konfigurationsdatei für PHP. Folgende Anpassungen sind empfohlen, besonders in Hinblick auf die Verwendung von TYPO3: Zentrale Konfigurationsdatei für PHP. Folgende Anpassungen sind empfohlen, besonders in Hinblick auf die Verwendung von TYPO3:
Zeile 99: Zeile 103:
 always_populate_raw_post_data = -1 always_populate_raw_post_data = -1
 max_input_vars = 1500 max_input_vars = 1500
 +upload_max_filesize = 10M
 +post_max_size = 10M
 </code> </code>
  
Zeile 133: Zeile 139:
 <code> <code>
 LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so
 +</code>
 +
 +<WRAP center round important 100%>
 +Der //LoadModule//-Eintrag für PHP kann **nicht an das Ende der Datei** geschrieben werden, sondern muss zu den anderen //LoadModule//-Einträgen. Sonst wird PHP nicht geladen!
 +</WRAP>
 +
 +Für die TYPO3-Extension ''realurl'' aktivieren wir gleich noch das Modul für die Rewrite-Regeln:
 +<code>
 +LoadModule rewrite_module libexec/apache2/mod_rewrite.so
 </code> </code>
  
Zeile 158: Zeile 173:
 <Virtualhost *:80> <Virtualhost *:80>
   VirtualDocumentRoot "/www/sites/%1/wwwroot"   VirtualDocumentRoot "/www/sites/%1/wwwroot"
-  ServerName sites.dev +  ServerName sites.test 
-  ServerAlias *.dev+  ServerAlias *.test
   UseCanonicalName Off   UseCanonicalName Off
 </Virtualhost> </Virtualhost>
 </code> </code>
  
-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/|http://kundenname.dev/]] aufgerufen werden kann. Ergänzungen für neue Websites sind so unnötig.+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.test/|http://kundenname.test/]] aufgerufen werden kann. Ergänzungen für neue Websites sind so unnötig.
  
 **Anschließend muss der Apache im Terminal neu gestartet werden:** **Anschließend muss der Apache im Terminal neu gestartet werden:**
Zeile 170: Zeile 185:
 sudo apachectl restart sudo apachectl restart
 </code> </code>
 +
 +==== Logfiles ====
 +
 +Das **access_log** und **error_log** des Apache liegen in folgendem Ordner:\\
 +''/private/var/log/apache2/''
  
 ---- ----
Zeile 231: Zeile 251:
 </code> </code>
  
-Im Browser nun [[http://phpmyadmin.dev/setup/|http://phpmyadmin.dev/setup/]] öffnen.+Im Browser nun [[http://phpmyadmin.test/setup/|http://phpmyadmin.test/setup/]] öffnen.
   * Den Button "New server" anklicken   * Den Button "New server" anklicken
   * Direkt in den Reiter "Authentication" wechseln   * Direkt in den Reiter "Authentication" wechseln
Zeile 241: Zeile 261:
 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. 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/|http://phpmyadmin.dev/]] erreichbar; mit den hinterlegten Zugangsdaten kann man sich einloggen und seine Datenbanken anlegen und verwalten.+Das wars schon. Nun ist phpMyAdmin unter [[http://phpmyadmin.test/|http://phpmyadmin.test/]] erreichbar; mit den hinterlegten Zugangsdaten kann man sich einloggen und seine Datenbanken anlegen und verwalten.
  
 ---- ----
Zeile 247: Zeile 267:
 ===== 9. E-Mail-Versand ===== ===== 9. E-Mail-Versand =====
  
-Kontaktformulare versenden E-Mails. TYPO3 auch. Mit Hilfe von **Postfix** wird dies lokal möglich (eine Internetverbindung ist weiterhin erforderlich!).+Mit Hilfe von **Postfix** wird es möglich, lokal E-Mails z.B. von Kontaktformularen versenden zu lassen. (eine Internetverbindung ist weiterhin erforderlich!). Postfix ist unter OS X bereits installiert und muss nur konfiguriert werden. 
 + 
 +Die folgenden Einstellungen gelten für die Nutzung eines GMX-Accounts und können für andere Mail-Anbieter angepasst werden. 
 + 
 +==== main.cf ==== 
 + 
 +Speicherort: ''/etc/postfix/main.cf'' 
 + 
 +Prüfe zuerst, ob die folgenden Zeilen so enthalten sind: 
 + 
 +<code> 
 +mail_owner = _postfix 
 +setgid_group = _postdrop 
 +</code> 
 + 
 +Anschließend müssen die folgenden Zeilen am Ende der Datei hinzugefügt werden: 
 + 
 +<code> 
 +# GMX SMTP: 
 +relayhost=mail.gmx.net:587 
 + 
 +# SASL-Authentifizierung im Postfix SMTP-Client aktivieren: 
 +smtp_sasl_auth_enable=yes 
 +smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd 
 +smtp_sasl_security_options=noanonymous 
 +smtp_sasl_mechanism_filter=plain 
 + 
 +# TLS/SSL-Verschlüsselung aktivieren: 
 +smtp_use_tls=yes 
 +smtp_tls_security_level=encrypt 
 +tls_random_source=dev:/dev/urandom 
 + 
 +# Umschreiben der lokalen E-Mail-Adresse, damit der Provider sie akzeptiert: 
 +sender_canonical_maps = hash:/etc/postfix/sender_canonical 
 + 
 +# TLS-Verschlüsselung für den GMX-SMTP aktivieren: 
 +smtp_tls_policy_maps = hash:/etc/postfix/tls_policy 
 +</code> 
 + 
 +Nun müssen die zuvor angegebenen Dateien natürlich auch erstellt werden. 
 + 
 +==== sasl_passwd ==== 
 + 
 +<code>mail.gmx.net:587 deineAdresse@gmx.de:DeinPasswort</code> 
 + 
 +==== sender_canonical ==== 
 + 
 +<code> 
 +myusername deineAdresse@gmx.net 
 +root deineAdresse@gmx.net 
 +staff deineAdresse@gmx.net 
 +</code> 
 + 
 +==== tls_policy ==== 
 + 
 +<code>mail.gmx.net:587 encrypt</code> 
 + 
 +Diese neuen Dateien müssen nun noch in das Postfix-Datenbankformat gebracht werden. 
 + 
 +**Terminal:** 
 +<code> 
 +sudo postmap /etc/postfix/sasl_passwd 
 +sudo postmap /etc/postfix/sender_canonical 
 +sudo postmap /etc/postfix/tls_policy 
 +</code> 
 + 
 +Zuletzt wird Postfix neu gestartet, damit die neuen Einstellungen übernommen werden. 
 + 
 +**Terminal:** 
 +<code> 
 +sudo postfix reload 
 +// oder das erste Mal gestartet: 
 +sudo postfix start 
 +</code> 
 + 
 +=== Testversand === 
 + 
 +Ob die Einstellungen erfolgreich waren, kann man mit diesem Befehl testen. Er versendet eine E-Mail an eine beliebige E-Mail-Adresse mit dem Betreff "Testversand" und dem aktuellen Zeitstempel als Text. 
 + 
 +**Terminal:** 
 +<code> 
 +date | mail -s Testversand beliebigeAdresse@example.org 
 +</code> 
 + 
 +==== TYPO3 ==== 
 + 
 +Damit TYPO3 E-Mails versenden kann, muss im Install Tool unter ''[MAIL][defaultMailFromAddress]'' die in Postfix eingerichtete Adresse hinterlegt werden.
  
 ---- ----
  
 ===== 10. Cronjobs ===== ===== 10. Cronjobs =====
 +
 +Zuerst: Cron aktivieren. Ggf. muss anschließend der Rechner neugestartet werden.
 +
 +**Terminal:**
 +<code>sudo touch /etc/crontab</code>
 +
 +Um Cronjobs hinzuzufügen, wird die Datei ''.crontab'' editiert. Wer auf den Standard-Editor //vim// verzichten mag, stellt vorher auf einen anderen Editor, z.B. //nano//, um.
 +
 +**Terminal:**
 +<code>
 +export EDITOR=nano
 +crontab -e
 +</code>
 +
 +Der folgende Befehl führt z.B. den **Scheduler** von TYPO3 alle 5 Minuten aus:
 +<code>
 +*/5 * * * * /www/sites/kunde1/wwwroot/typo3/cli_dispatch.phpsh scheduler
 +</code>
 +
 +Man kann Cronjobs deaktivieren, in dem man am Anfang der entsprechenden Zeile ein ''#'' notiert.
  
 ---- ----
tools/local-dev-yosemite.1449937908.txt.gz · Zuletzt geändert: 2015/12/12 17:31 von admin