我有一个asp.net项目,我使用TFS-2017 Release Managment部署到一个环境我们遇到的问题是,当我们部署网站时,用户有旧的(缓存的)图像/内容我想配置IIS 7以便我可以在本地测试一些解决方案,网站在localhost:89上打开但是当我点击一个按钮它重定向我到一个实时网站时,我尝试用
配置Hosts文件127.0.0.1 example.com
127.0.0.1 www.example.com
但这不起作用,我的web.config文件包含很多appSettings 这是导致我重定向的原因(我想)。
问题:如何配置IIS以便它只使用Localhost:89,当我点击一个按钮时,它会将我重定向到www.example.com而不是127.0.0.1:89?< / p>
答案 0 :(得分:1)
如何配置IIS以便它只使用Localhost:89,当我点击一个按钮时,它会将我而不是www.example.com重定向到127.0.0.1:89?
您无法为此
配置IIS
IIS不会自动重定向它是正在执行它的应用程序。如果您的应用程序已编写代码以重定向到另一个页面,则从IIS端您无法执行任何操作。流程将如下所示
由于重定向是应用程序发送的响应消息,而实际的重定向是由浏览器完成的,因此从IIs方面你不能做太多。
正如您所做的那样,您可以告诉浏览器www.example.com是localhost(通过编辑主机(C:\ Windows \ System32 \ drivers \ etc \ hosts)文件。但这与IIS无关。 / p>
您必须与应用程序开发人员联系,了解它为何重定向并根据设置进行条件重定向。
Hosts文件配置看起来很好
127.0.0.1 example.com
127.0.0.1 www.example.com
但是你可能已经知道它只能在同一台机器上运行。所以如果从命令行ping www.example com,你应该得到如下输出
D:\>ping www.example.com
Pinging www.example.com [127.0.0.1] with 32 bytes of data:
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Ping statistics for 127.0.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
您的ping工作正常,您必须完全关闭浏览器并重新打开它(如果是chrome,请关闭所有chrome实例)。然后从浏览器访问www.example.com,它应该转到localhost。