2016-09-17 19 views
0

我的htacces文件在其中强制一个网站使用SSL。基于本地开发ip(MAMP)的HTACCESS内部的条件逻辑

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://www.domain.com/$1 [R=301,L] 

不过,我的问题是,我的本地MAMP服务器上,如果我去在浏览器中localhost.domain.com我重定向到domain.com。

是否有任何条件逻辑,我可以在htaccess的使用说“如果请求是从本地主机则不要力重定向到SSL主域”

回答

0

你只需要在写入规则和正则表达式玩一点点,将其更改为:

RewriteRule ^(?!localhost)(.*)$ https://www.domain.com/$1 [R=301,L]

(?!localhost)是一个正则表达式,这意味着本地主机

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]