.htaccess将http重定向到https,并将主页访问者重定向到另一个页面



我知道这个问题已经被问了好几次了,但我检查了很多其他答案,仍然无法解决我的问题。

假设我的网站是example.com

我想将所有http地址重定向到https,并将所有example.com访问者重定向到example.com/main

这就是我尝试的:

RewriteEngine On
RewriteRule ^(.*)$ https://www.example.com/main/$1 [R,L]

这有点奏效,但也有一些问题。如果我键入www.example.com/mainexample.com/main,它将转到http站点,而不是https。为什么?

此外,如果我键入example.com/works/01,它将变为https://www.example.com/main/works/01。它在.中添加了一个额外的"主"文件夹

如何解决此问题?

您需要检查请求是否来自httpURL方案,然后将该请求重定向到安全连接

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/main/$1 [R,L]

最新更新