没有.aspx页面后缀,怎么样?

时间:2014-08-18 13:31:43

标签: asp.net iis

为什么stackoverflow在url栏中没有任何.aspx页面后缀?一切都以/ something /或/ page

结束

如何在asp.net中实现相同的目标?

2 个答案:

答案 0 :(得分:0)

这些被称为friendly urls。我不确定他们是如何在Stackoverflow中编写的,但你可以通过这样做来删除.aspx entension:

<rewrite>
        <rules>
            <rule name="RewriteMyASPX">
                <match url="(.*)" />
                <conditions logicalGrouping="MatchAll">
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                </conditions>
                <action type="Rewrite" url="{R:1}.aspx" />
            </rule>
        </rules>
    </rewrite>

答案 1 :(得分:0)

您可以使用MVC及其路由功能(请参阅http://www.asp.net/mvc/overview/controllers-and-routing),而不是webforms(和aspx页面),其中网址映射到&#34; action&#34;在&#34;控制器&#34;。

/questions/25364620/whatever的网址可以映射到&#34;索引&#34; &#34; QuestionsController&#34;的动作(默认值) (&#34;问题&#34;来自URL +&#34; Controller&#34;),id参数为25364620.标题被忽略。