我正在尝试将我的.htaccess文件仅将某些页面/文件夹重定向到https,如果不是需要加密的页面,那么它应该向用户拍摄http页面。另外,我希望能够列出某些可以是HTTP或HTTPS的文件夹
以下是我尝试自己写作的内容。但似乎没有正常工作。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{SERVER_PORT} 80
RewriteCond $1 ^(myaccount|payment\.html)
RewriteRule ^(.*)$ https://www.domain.com/$1 [R=301,L]
RewriteCond %{SERVER_PORT} 443
RewriteCond $1 !^(myaccount|payment\.html)
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
</IfModule>
答案 0 :(得分:1)
您正在检查RewriteCond模式中的文字$1
。它应该是:
RewriteCond %{REQUEST_URI} ...stuff to match against here...
答案 1 :(得分:0)
这应该做你想要的。
RewriteCond %{SERVER_PORT} 443 [NC]
RewriteCond %{REQUEST_URI} !^/(myaccount|payment)\.html [NC]
RewriteRule . http://www.domain.com/%{REQUEST_URI}/ [R=301,L]