我要求将一个URL保留为HTTP,其余所有URL均为https。 我的货币000-default.conf配置为:
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} off
Redirect permanent / **https**://www.abc.com/
</VirtualHost>
这会将所有URL重定向到https。 现在我在此站点上有一个URL,网址为 http ://www.abc.com/blog 我不希望它重定向到https。我该如何实现?
答案 0 :(得分:1)
您当前的食谱有点混乱。 RewriteCond不会阻止紧随其后的重定向,它只会影响RewriteRule。但是您永远不会在端口80虚拟主机上看到HTTPS请求。
您可以将重定向切换为实际使用mod_rewrite并添加异常。这些条件默认情况下为AND:
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} !=www.example.com
RewriteCond %{REQUEST_URI} !^/blog$
RewriteRule ^(/.*) https://www.example.com/$1 [R=301]