使用 HTTPS 將網域重寫到子資料夾

使用 HTTPS 將網域重寫到子資料夾

如何正確使用 HTTPS 將網域重寫到子資料夾?

這只會將所有請求重定向到 subfolder1

RewriteCond %{HTTP_HOST} ^(www.)?example1.com$   
RewriteRule !^subfolder1/ subfolder1%{REQUEST_URI} [L]

如果我改為

RewriteCond %{HTTP_HOST} ^(www.)?example1.com$   
RewriteRule !^subfolder1/ https://subfolder1%{REQUEST_URI} [L]

然後它會產生一個循環

問題是,如果我導航到此網址: example.com ,那麼我希望它重定向到 HTTPS,並且不將網址更改為: example.com/subfolder1

我想讓上面的內容與 HTTPS 一起使用。

答案1

我發布我的解決方案,以防有人需要。但如果有更好的方法請告訴我。

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L,R]

RewriteCond %{HTTP_HOST} ^example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteCond %{REQUEST_URI} !^/folder
RewriteRule (.*)$ /folder/$1

相關內容