Ich habe einen Apache mit SSL, der auf Port 444 ausgeführt wird. Ich muss alle URL/Anforderungen neu schreiben, die mit https://servername
(das ist der Standardport 443) in https://servername:444
beginnt.
Ich habe folgende Regel für .htaccess:
RewriteCond %{SERVER_PORT} =443
RewriteRule ^(.*)$ https://%{SERVER_NAME}:444%{REQUEST_URI}
Das funktioniert nicht. Um die Bedingung zu überprüfen, habe ich den Port unter der Bedingung RewriteCond %{SERVER_PORT} =80
geändert, und alle HTTP-Anforderungen werden an HTTPS übergeben.
Wenn ich Ihre Situation richtig verstanden habe, besteht Ihr Problem darin, dass %{SERVER_PORT}
nie 443 ist, da Ihr Server diesen Port nicht überwacht. Ihre Bedingung RewriteCond %{SERVER_PORT}=443
ist also niemals wahr.
Ich glaube nicht, dass es möglich ist, das von Ihnen beabsichtigte Umschreiben durchzuführen, es sei denn, Sie setzen einen Server an Port 443 ab, nur um die anfänglichen eingehenden Anforderungen zu behandeln, die Sie sofort auf Port 444 umleiten Tun Sie das, können Sie genauso gut gar nicht weiterleiten; Behandeln Sie die HTTPS-Anforderungen einfach bei 443.