Abhgängige Bedingungen in .htaccess
Heinzi
- https
Hallo zusammen,
ich habe 2 Domains (domainA.de und domainB.de, die ins gleiche Webroot zeigen.
Bei der einen Domain möchte ich nun noch eine Mobil-Weiche einstellen.
Ich weiß, wie ich einerseits die Weiterleitung anhand des User_Agents mache und auch wie ich auf die Domain überprüfe, aber wie verknüpfe ich das Ganze?
Mobilweiche bei nur einer Domain:
RewriteCond %{HTTP_USER_AGENT} ^.*iPad.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*iPhone.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Android.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*BlackBerry.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} '^.*Windows CE.*$' [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*symbian.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Smartphone.*$
RewriteRule ^(.*)$ http://mobil.domainA.de/ [R,L]
Host-Prüfung
RewriteCond %{HTTP_HOST} ^(www.)?domanA.de$
RewriteRule ^(.*)$ http://mobil.domainA.de/ [R,L]
Wie kriege ich es hin, dass die Mobil-Weiche nur greift, wenn auch domainA der Host ist?
Sprich: Wie kann ich die Condition von der Host-Prüfung oben in die Mobilweiche einbauen?
Vielen Dank und vG
Heinzi
Hallo Heinzi,
ich verstehe die Frage nicht ganz, im Prinzip hast du den Code doch schon fast da stehen?! Wenn man die Bedingungen verknüpft (und OR weglässt), dann sieht das folgendermaßen aus:
RewriteCond %{HTTP_USER_AGENT} ^.*Smartphone.*$
RewriteCond %{HTTP_HOST} ^(www.)?domainA.de$
RewriteRule ^(.*)$ http://mobil.domainA.de/ [R,L]
Ist es das, was du meintest?
Nachtrag:
du könntest das ganze auch ein bisschen verkürzen:
RewriteCond %{HTTP_USER_AGENT} ^.*(iPad|iPhone|Android|BlackBerry|Windows CE|symbian|Smartphone).*$
RewriteCond %{HTTP_HOST} ^(www\.)?domainA\.de$
RewriteRule ^(.*)$ http://mobil.domainA.de/ [R,L]
ok, das probier ich mal aus.
dachte, dass es diverse User-Agents gibt, die treffen könnten.
Daher das OR.
Damit ging es aber nicht.
Danke
Nachtrag:
du könntest das ganze auch ein bisschen verkürzen:
RewriteCond %{HTTP_USER_AGENT} ^.(iPad|iPhone|Android|BlackBerry|Windows CE|symbian|Smartphone).$
RewriteCond %{HTTP_HOST} ^(www.)?domainA.de$
RewriteRule ^(.*)$ http://mobil.domainA.de/ [R,L]
Nachtrag:
du könntest das ganze auch ein bisschen verkürzen:[code lang=sql]RewriteCond %{HTTP_USER_AGENT} ^.*(iPad|iPhone|Android|BlackBerry|Windows CE|symbian|Smartphone).*$
^.* und .*$ kann auch weg - das ist für die Würste