Ramschkasten.de

Alles was so hängen bleibt

htaccess: Weiterleitung spezifischer URL (s) auf spezifische Unterverzeichnis (e)

Problemstellung

Folgendes Problem ist via .htaccess zu lösen:
Zwei spezifischen Domains auf dem selben Server auf zwei spezifische Subfolder zu leiten.

Hintergrund

Zwei Frontends und ein Backend jeweils auf einer Ebene. Beide FE’s nutzen das selbe BE um Daten mit der DB auszutauschen.
Jedes Frontend soll für sich über eine eigene Domain/Subdomain erreichbar sein ohne direkt in den FE-Ordner zu linken da dann der Verweis auf das BE nicht funktioniert.
Der Pfad ../BE-Ordner würde bei einer direkten Domainweiterleitung ins Leere laufen, denn unter dem FE-Ordner mit der direkten Domainweiterleitung auf den spezifischen FE-Ordner es keinen tieferen Pfad geben kann.

Setting:

  • www.domain-1.de
  • www.domain-2.de

Beide Domains zeigen auf den ServerFolder:

  • /serverfolder/

Die Frontends liegen demnach:

  • /serverfolder/subfolder-domain-1-fe/
  • /serverfolder/subfolder-domain-2-fe/

Das Backend liegt:

  • /serverfolder/be/

Zieladressen wäre normal:

  • www.domain-1.de/subfolder-domain-1-fe/
  • www.domain-2.de/subfolder-domain-2-fe/

Ziel ist, schon mit der einfachen Eingabe:

  • www.domain-1.de/ und
  • www.domain-2.de/

in die richtigen Ordner weitergeleitet zu werden ohne die Verbindung aus dem FE zum BE zu kappen.

Nun gilt es die .htaccess so zu schreiben das folgenden Aufgabe gelöst wird:

  • Wenn Domain-1 kommt dann in Unterordner weiterleiten aber nur wenn der Aufruf ohne den subfolder /subfolder-domain-1-fe/ kommt
  • Bei Domain-2 der gleiche Fall

Problemlösung

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?domain-1\.de [NC]
RewriteCond %{REQUEST_URI} !^/subfolder-domain-1-fe/.*$
RewriteRule ^(.*)$ /subfolder-domain-1-fe/ [R=301,L]
	
RewriteCond %{HTTP_HOST} ^(www\.)?domain-2\.de [NC]
RewriteCond %{REQUEST_URI} !^/subfolder-domain-2-fe/.*$
RewriteRule ^(.*)$ /subfolder-domain-2-fe/ [R=301,L]

 

Auf die Lösung bin ich über den Hinweis spezifische Domain weiterleiten gekommen

 

php5 und 1und1

Aus der Rubrik wir machen uns das Leben mit 1und1 einfacher – lesen und merken:

Bei den meisten Standardhostingpaketen bei 1und1 ist zwar die Option php5 zu nutzen dabei, aber leider kann man diese nicht im Useraccount einstellen. Zwei Möglichkeiten gibt es hierfür, einmal über die php.ini, dort aber nur lokal für den jeweiligen Ordner wo diese gerade liegt. Eleganter gehts über die .htaccess im obersten Ordner mit dem Eintrag:

AddType x-mapp-php5 .php .php4 .php3

dann klappst auch überall auf der Seite.

Nachlesen bei 1und1 hier.