.htaccess https打破重写规则

时间:2014-02-19 06:27:33

标签: .htaccess ssl

我正在遇到一些.htaccess重定向问题。

主要是我不关心用户是否使用https,除非我发送给他们,我已经找到了很多关于如何强制https的资源,但这不是我想要做的。

这是我的htaccess的一个例子:

Options -Indexes
Options -MultiViews

<filesMatch "\.(html|htm|txt|js|htaccess)$">
FileETag None
    <ifModule mod_headers.c>
        Header unset ETag
        Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
        Header set Pragma "no-cache"
        Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
    </ifModule>
</filesMatch>

ErrorDocument 404 /404.php 

RewriteEngine On

#RewriteCond %{HTTPS} !=on
#RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

#Main site rules
RewriteRule    ^about/?$     about.php    [NC,L]

我可以使用以下方式强制使用https:

#RewriteCond %{HTTPS} !=on
#RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

但是重定向到about.php的示例规则不起作用。

如何在重定向中允许https?

我还试验过:

Define servername www.example.com
Define SSL

但我不明白它的功能或实现。

0 个答案:

没有答案