Generische URL
Für lokale Entwicklungsumgebung mit Contao 4
Glen Langer
Contao Stammtisch Berlin (geplant)
Version: 1.0.0 vom 25.07.2016
Quellen
- develovers.de, mit leichten textuellen Anpassungen
- Uberspace, mit Anpassungen für Contao 4
Lizenz
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Deutschland Lizenz.
Über mich
- Contao seit 2.5.8
- PHP ZCE
- Forum: BugBuster
- http://contao.ninja/
Worum geht es?
Neues lokales Projekt:
Anpassung /etc/hosts: 127.0.0.1 kunde1.contaodev
Anpassung vhost für kunde1.contaodev
Das muss nicht sein!
Ziel
In Zukunft reicht es aus, ein Projektverzeichnis innerhalb "htdocs" anzulegen und schon kann darauf zugegriffen werden mit dem Browser.
Was brauchen wir?
Am Beispiel für Linux (Ubuntu) und Apache:
Dnsmasq
VirtualHost-Direktive von Uberspace
Am Beispiel für Windows und Apache:
Acrylic DNS Proxy
VirtualHost-Direktive von Uberspace
Dnsmasq installieren und einrichten
sudo apt-get install dnsmasq
sudo vi /etc/dnsmasq.d/contaodev.conf
address=/contaodev/127.0.0.1
sudo service dnsmasq restart
Bewirkt: alles mit .contaodev wird nun mittels umgebogener DNS Antwort umgeleitet nach localhost
Dnsmasq trägt sich dazu selbst beim Start als primärer DNS Server ein.
Acrylic DNS Proxy installieren
Download von der Homepage von Acrylic DNS Proxy, dort ist auch die Einrichtung als primärer DNS Server beschrieben sowie die Konfiguration selbst.
In der Beispielkonfiguration auf der Homepage ist die letzte Zeile wie folgt zu ergänzen, um dasselbe zu erreichen wie bei Dnsmasq gezeigt:
[WhiteExceptionsSection]
NAME1=*.contaodev
(ungetestet, Rückmeldung erwünscht)
VirtualHost anpassen/erweitern
# If there is a host-specific pseudo-DocumentRoot,
# use it instead of the default one
RewriteCond %{REQUEST_URI} !^/f?cgi-bin/
# Without Port in URL
RewriteCond /var/www/contao4go/%{HTTP_HOST}/web -d
RewriteRule (.*) /var/www/contao4go/%{HTTP_HOST}/web/$1
# With Port in URL
#RewriteCond /var/www/contao4go/%{SERVER_NAME}/web -d
#RewriteRule (.*) /var/www/contao4go/%{SERVER_NAME}/web/$1
Existiert ein Verzeichnis mit dem gleichen Namen wie die URL, die aufgerufen wird, wird es als „DocumentRoot“ verwendet.
Bei Verwendung von .htaccess-Rewrites innerhalb des Verzeichnisses muss ein „RewriteBase /
“ stehen.
Ergebnis
- Installation von Contao 4.2 ins Verzeichnis 'contao420.contaodev'
(/var/www/contao4go/contao420.contaodev/) - Aufruf http://contao420.contaodev/install.php
- Yeahhh!
Fragen?
Tipp:
Bei Einsatz von 'suphp', falls nicht bereits geschehen, den Hauptpfad (hier: /var/www/contao4go) eintragen in '/etc/suphp/suphp.conf' -> docroot
Bonus:
Fertich!
Diese Präsentation wurde erstellt mit
reveal.js-for-Contao
Danke an den Contao-Stammtisch München.