0

所以我想做以下事情:

  1. 如果用户尝试访问 index.php 以外的站点的 ypart,他们会被重定向到 https 版本。

  2. 因此,如果他们尝试访问 example.com/index.php,他们不会被重定向到 https 版本

  3. 但如果他们访问除 index.php 之外的站点的任何部分(如 welcome.php),他们将被重定向到 https 版本。

这是我之前进行全站点 https 重定向的方法(我不确定如何将全站点重定向到 index.php 上的 https 示例)

RewriteBase /
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ https://www.handybook.com/$1 [L,R=301]

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


# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php
4

1 回答 1

1

为了使除索引以外的所有页面都重定向到 https,请将以下内容添加到您的 .htaccess 文件中:

RewriteCond %{HTTPS} !on
RewriteRule !^(index)\.php$ https://%{HTTP_HOST}%{REQUEST_URI}

您可以使用括号内的管道字符添加其他异常,如下所示:

RewriteRule !^(index|about|contact)\.php$ https://%{HTTP_HOST}%{REQUEST_URI}
于 2012-06-23T21:42:07.583 回答