0

这是htaccess

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule (.*) https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NCL]

第一条规则检查您是否有 www ,如果没有重定向到 www + https,下一条规则检查客户端是否通过 https 访问网站,一切正常,除了在 Opera 上,Opera 将我重定向到https://www .domain.com/https://domain.com/ 就像它将域 + 请求 uri 放在 {request_uri} 中,我似乎无法使其工作。关于如何使其正常工作的任何建议?编辑: IE 也不工作。它只是给服务器错误。

4

1 回答 1

1

重定向是由 Apache 完成的,所以 Opera 在这个错误中是无罪的。我测试了你的规则并得到了一个错误:

RewriteRule: unknown flag 'NCL'

试试这个:

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NC,L]
于 2012-10-21T09:06:34.727 回答