【发布时间】:2011-03-17 17:35:09
【问题描述】:
大家好,我正在托管自己的服务器,并且有两个 IP 地址(一个用于从内部网连接的人,一个用于从外部连接的人),我有两个动态 dns 重定向到这些 ip。我刚刚在基于 apache2 的服务器上安装/设置了 SSL,并尝试使用 .htaccess 强制用户使用 https。我使用像
这样的语句让它工作RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$https://mywebsite.dyn.site/$1 [R,L]
问题在于,由于我在同一个网站上有两个单独的域名,因此该语句会将所有流量重定向到一个特定域。我想我要问的是是否有 a.) 一种放置条件 if 语句来检查其 ip 的方法,或者最好 b.) 一种从硬编码中删除“mywebsite”并放置一个变量的方法无论用户输入什么。
任何帮助将不胜感激。
【问题讨论】:
-
你可以在你的 RewriteRule 之前使用多个 RewriteCond...所以检查端口和 HTTP_HOST(我认为)。
标签: .htaccess mod-rewrite https apache2