我的htacces文件中包含以下命令,强制网站使用SSL。
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.domain.com/$1 [R=301,L]
但问题是我在本地MAMP服务器上,如果我在浏览器中访问localhost.domain.com,我会被重定向到domain.com。
我是否可以在htaccess中使用任何条件逻辑来说“如果请求来自localhost,则不要强制重定向到主域上的ssl”
答案 0 :(得分:1)
您需要根据RewriteCond
添加另一个HOST_NAME
,而不是从localhost
开始:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^localhost [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^ https://www.domain.com}%{REQUEST_URI} [R=301,L,NE]
答案 1 :(得分:0)
您只需稍微在重写规则中使用RegEx并将其更改为:
(?!localhost)
{{1}}是一个regEx,意思是 NOT localhost 。