我不知道如何解决这个问题。我需要从http重定向到https,但仅在某些情况下:
重定向
http://example.com to https://example.com
http://example.com/any-url to https://example.com/any-url
不要重定向
http://subdomain1.example.com
http://subdomain2.example.com
http://example.com/any-file.xml
我打开ssl,但只有我的域有认证,我喜欢保留xml文件而不重定向,以避免一些合作伙伴问题。
任何帮助?
答案 0 :(得分:0)
这次改写应该有效:
authorization
答案 1 :(得分:0)
在您的情况下,这将起作用,假设您的常规HTTP连接是端口80:
# If the site is plain HTTP
RewriteCond %{SERVER_PORT} 80
# and if the requested filename is not an XML file
RewriteCond %{REQUEST_FILENAME} !^(.*)\.xml$
# and if the URL specifies the request is for the primary domain (not subdomain)
RewriteCond %{HTTP_HOST} ^example.com$
# then rewrite to HTTPS
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
您当然需要插入正确的域名,但它应该有效。我在我的系统上进行了测试,但确实如此。