我试图将我的域的IP地址重定向到域名,并遇到麻烦. IP地址不会重定向到下面的重定向语句中列出的域名.
IP地址是http://184.168.27.44/
我在web.config文件中设置了以下规则:
<rule name="IPHit" enabled="true" stopProcessing="false"> <match url="(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern="^184\.168\.27\.44" /> </conditions> <action type="Redirect" url="http://littlejawsbigsmiles.com/{R:1}" redirectType="Permanent" /> </rule>
DNS使用以下记录进行设置:
A (HOST) ------------------------ @ --> 184.168.27.44 CNAME (Alias) ------------------------ www --> @
我还有什么其他的东西吗?我不确定为什么这不起作用.
我也尝试过解决方案provided here但重定向仍然没有发生
解决方法
您的web.config规则是正确的.您遇到的问题是因为您正在使用Godaddy.com的共享主机方案.将IP放入
here会返回:
Found 696 domains hosted on the same web server as 184.168.27.44
由于您不是该IP上托管的唯一站点,当浏览器直接访问IP时,服务器不知道要返回哪个站点,因此显示以下错误:
The page you tried to access does not exist on this server…
为了能够通过IP直接指向您的站点,您需要专用托管,这要贵得多.
如果您不在共享IP上,则更完整的规则将如下所示(在我自己的具有专用IP的服务器上进行测试):
<rule name="IPHit" enabled="true" stopProcessing="false"> <match url="(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern="184.168.27.44" /> </conditions> <action type="Redirect" url="http://littlejawsbigsmiles.com/{R:1}" redirectType="Permanent" appendQueryString="true" /> </rule>
以上类似于您的和Vysakh’s answers,但添加了appendQueryString属性.如果您有任何带有查询字符串的URL(在“?”之后),那么这是必要的,以便在重定向期间添加查询字符串.