我已经用server 2012 R2和IIS设置了一个新服务器,并将一个应用程序发布到一个新站点。当我在我的开发环境中运行应用程序时,它在.aspx中显示了.aspx文件扩展名,但是当我在instance上浏览一个已发布的实例时,它会删除.aspx扩展名。
因此,不知何故,它有某种形式的URL重写启用了方框-如何改变这一点,因为我需要它是一致的开发版本。我安装了URL重写扩展,以查看是否配置了任何规则,但没有定义任何规则。
谢谢!
发布于 2017-10-20 10:37:25
这对我们来说是一个问题,因为我们开发了一个菜单系统,它通过高亮显示基于当前页面URL中的页面名的适当菜单项来显示哪些页面处于活动状态。最后,我们修改代码,只需要在没有.aspx的情况下查找.aspx(“页面名”),而不是计算包括扩展名在内的完整页面名。这很好,我们还没有弄清楚到底是什么导致了URL被重写。恐怕上述任何答案都没有帮助找出问题所在。
发布于 2017-10-15 12:03:11
您可以使用重写规则( web.config )来配置您的examplePage.aspx文件,如下所示:
<?xml version="1.0"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="examplePage.aspx Redirect" stopProcessing="true">
<match url="^(.*\/)*examplePage\.aspx$" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_METHOD}" negate="true" pattern="^POST$" />
</conditions>
<action type="Redirect" url="{R:1}" redirectType="Permanent"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>发布于 2017-10-16 11:54:02
在开发中创建某种类型的web项目时,我看到了这种行为。所以可能是安装了干扰的东西。我想您已经查看了web.config中的任何内容,但如果没有,请尝试machine.config。另外,请查看IIS本身,单击根级别(网站上方)时安装了什么。
https://stackoverflow.com/questions/46664942
复制相似问题