Generische URL

Für lokale Entwicklungsumgebung mit Contao 4

Glen Langer

Contao Stammtisch Berlin (geplant)

Version: 1.0.0 vom 25.07.2016

Quellen

 

Lizenz

Creative Commons Lizenzvertrag
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Deutschland Lizenz.

Über mich

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:

MailCatcher und Contao

 

Fertich!

Contao Ninja

 

Diese Präsentation wurde erstellt mit

reveal.js-for-Contao

Danke an den Contao-Stammtisch München.