Apache 多条件重写规则
我有一个需要强制SSL模式,然后强制非SSL的其余地区的网站 我从以下规则开始:Apache 多条件重写规则,apache,mod-rewrite,ssl,Apache,Mod Rewrite,Ssl,我有一个需要强制SSL模式,然后强制非SSL的其余地区的网站 我从以下规则开始: <VirtualHost *:80> RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^/tourism/bookings/(.*) https://%{SERVER_NAME}/tourism/bookings/$1 [R,L] RewriteRule ^/?bookings/(.*) https://%{SERVER_NA
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/tourism/bookings/(.*) https://%{SERVER_NAME}/tourism/bookings/$1 [R,L]
RewriteRule ^/?bookings/(.*) https://%{SERVER_NAME}/bookings/$1 [R,L]
</VirtualHost>
<VirtualHost *:443>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/bookings
RewriteCond %{REQUEST_URI} !^/tourism/bookings
RewriteRule (.*) http://%{SERVER_NAME}$1 [L,R,QSA]
</VirtualHost>
重新启动发动机
重写cond%{HTTPS}=在…上
重写规则^/tourism/bookings/(*)https://%{SERVER_NAME}/tourism/bookings/$1[R,L]
重写规则^/?bookings/(*)https://%{SERVER_NAME}/bookings/$1[R,L]
重新启动发动机
重写cond%{REQUEST_URI}^/预订
重写cond%{REQUEST_URI}^/旅游/预订
重写规则(*)http://%{SERVER_NAME}$1[L,R,QSA]
现在,上面的工作-但SSL模式显然解释/includes/*以强制它使用非SSL。。。是否对上述内容进行了调整,以允许我强制执行除上述两个内容之外的所有内容(但任何依赖项,如JS/CSS,都必须遵循当前协议)
提前感谢如果您想排除
/bookings
和/tourism/bookings
之外的其他内容,只需在条件中排除即可
另外,您不需要RewriteCond%{HTTPS}=在
条件下,因为该虚拟主机始终是非HTTPS的:
<VirtualHost *:80>
RewriteEngine On
RewriteCond %{REQUEST_URI} !\.(css|js)$ [NC]
RewriteRule ^/tourism/bookings/(.*) https://%{SERVER_NAME}/tourism/bookings/$1 [R,L]
RewriteCond %{REQUEST_URI} !\.(css|js)$ [NC]
RewriteRule ^/?bookings/(.*) https://%{SERVER_NAME}/bookings/$1 [R,L]
</VirtualHost>
<VirtualHost *:443>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/bookings
RewriteCond %{REQUEST_URI} !^/tourism/bookings
RewriteCond %{REQUEST_URI} !\.(css|js)$ [NC]
RewriteRule (.*) http://%{SERVER_NAME}$1 [L,R,QSA]
</VirtualHost>
重新启动发动机
重写条件%{REQUEST\u URI}!\。(css|js)$[NC]
重写规则^/tourism/bookings/(*)https://%{SERVER_NAME}/tourism/bookings/$1[R,L]
重写条件%{REQUEST\u URI}!\。(css|js)$[NC]
重写规则^/?bookings/(*)https://%{SERVER_NAME}/bookings/$1[R,L]
重新启动发动机
重写cond%{REQUEST_URI}^/预订
重写cond%{REQUEST_URI}^/旅游/预订
重写条件%{REQUEST\u URI}!\。(css|js)$[NC]
重写规则(*)http://%{SERVER_NAME}$1[L,R,QSA]