我有一個的httpd的虛擬主機重寫規則配置到任意端口80的流量轉發到端口443網址:阿帕奇重寫條件的援助
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://www.example.com/dir/subdir$1 [L,R]
當最終用戶導航到端口80首先這工作得很好。但導航到端口443的最終用戶不會處理重寫規則,因爲它不在httpd-ssl配置文件中。
什麼是正確的方式來包含httpd-ssl重寫條件,以便如果URL尚未被重寫,我可以重寫它?
我已經試過各種選項,最後的httpd-ssl的重寫嘗試如下:
RewriteCond %{DOCUMENT_ROOT} !^/dir/subdir$
RewriteRule ^/(.*) /dir/subdir$1
你的最終目標是什麼?看起來你正試圖將所有請求寫入'dir/subdir'。請提供您的最終用戶將看到的示例網址,以及應該重寫/重定向到SSL和非SSL的示例網址。 –
最終目標是任何最終用戶轉到www.example.com或example.com,無論HTTP或HTTPS將被重定向到https://www.example.com/dir/subdir在端口443 –