我需要将所有HTTP请求重定向到HTTPS,但访问我的管理页面的请求除外。
这应该转到HTTP
http://example.com/admin/**/*
这应该转到HTTPS:
http://example.com/blas.dfds
这就是我所拥有的,它会将所有内容重定向到HTTPS。如何使用" admin"添加过滤器来请求关键字?
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
答案 0 :(得分:0)
这样做:
RewriteEngine On
# http-https for everything except /admin
RewriteCond %{HTTPS} off
RewriteCond %{THE_REQUEST} !/admin [NC]
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
# https-http for /admin
RewriteCond %{HTTPS} on
RewriteCond %{THE_REQUEST} /admin [NC]
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
在新浏览器中测试这组新规则。