我有这段代码:
RewriteCond %{HTTPS} =on
RewriteCond %{REQUEST_URI} !\.(jpe?g|gif|bmp|png|ico|js|css)$ [NC]
RewriteRule !^billing(/.*)?$ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NC,NE]
如果他们尝试使用http
访问 billing / 区域以外的任何内容,则会将其重定向到https
等效内容。
然而,我想知道如何将其他页面添加到"白名单"允许通过https
加载的页面?
这两个问题将是:
但是他们最后都可能有查询参数。
有人可以解释如何将上述内容添加到允许从https
访问的内容,以便下次我想知道添加内容吗?
答案 0 :(得分:1)
您不必担心查询字符串,这些字符串在请求URI之外匹配。您可以添加其他条件:
RewriteCond %{HTTPS} =on
RewriteCond %{REQUEST_URI} !\.(jpe?g|gif|bmp|png|ico|js|css)$ [NC]
RewriteCond %{REQUEST_URI} !^/billing
RewriteCond %{REQUEST_URI} !^/remote/get_breaks\.php
RewriteCond %{REQUEST_URI} !^/thumbnail\.php
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NC,NE]
让它更容易阅读。