suit: .htaccess

Beitrag lesen

kann mir jemand sagen ob und wie ich in einer .htaccess überprüfen kann ob die Adresse folgendermaßen formatiert ist:

https://www.mydomain.com

du meinst https://www.example.com

Bezüglich einer Umleitung auf https habe ich folgenden code gefunden:

Dann nimm ihn bitte nicht her - der ist in jedem Fall Mist.

RewriteEngine On

Das hier ist noch OK :)

RewriteCond %{SERVER_PORT} !^443$

Port 443 ist zwar sehr gebräuchlich aber nicht verpflichtend - das Feld "HTTPS" zu befragen ist zielführender.

RewriteRule (.*) https://%{SERVER_NAME}%{REQUEST_URI}

SERVER_NAME ist wenig prickelend, da dies nichts mit dem verwendeten Host zu tun hat - HTTP_HOST ist hier das Mittel der Wahl.

Geht aber auch kürzer, dafür extra REQUEST_URI bemühen ist unnötig - und was man auch immer wieder sieht: das suchmuster Klammern. Das ist zwar jetzt nicht die Bremse bei so kurzen Zeichenketten, aber sowas sollte man sich garnicht erst angewöhnen:

RewriteRule .* https://%{HTTP_HOST}/$0

Allerdings stellt sich mir die Frage wie eine RewriteCond für www aussehen kann und diese mit der bestehenden RewriteCond verknüpft werden soll.

Hä?

Du meinst eine weitere RewriteCond, in der du prüfst ob der HTTP_HOST deinen Vorstellungen entspricht?

Ein Blick in die Doku genügt http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html - das ist so ziemlich der Standardfall