首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >web.config & Aruba -网址重写

web.config & Aruba -网址重写
EN

Stack Overflow用户
提问于 2015-08-14 22:20:02
回答 2查看 933关注 0票数 0

我正在开发我的第一个网站,刚刚了解到IIS的web.config文件,所以我想要做的是隐藏url的不同部分。

例如,主页是www.domain.com/ it /homepage.html,我想让它显示为www.domain.com/it/homepage。我还没有在网上找到任何关于删除.html扩展的东西,只是很多我试图用.html替换的.aspx,失败得很糟糕。

另一个附带问题:是否可以使用web.config重定向错误?我见过很多基于.htaccess的解决方案,但仅此而已。

编辑:忘了说这个网站是由ARUBA托管的,在他们面向windows的服务器上

EN

回答 2

Stack Overflow用户

发布于 2015-08-14 22:26:01

您正在尝试更改站点的URL,这是访问站点的方式...这是一个非常奇怪的动作。当您收到对服务器的某个页面的请求时,URL将被解析为该文件的路径。如果你想改变URL,你需要改变文件的名称--如果你不想最后有一个.html,那么也许文件不应该是html文件--然而,你的目标是不同的。您根本不想有任何扩展。

幸运的是,有一种方法可以让url端点不带任何文件扩展名。那应该是一个文件夹。文件夹没有扩展名,但是除了它们链接的文件之外,它们本身没有任何内容。

附注:还有另一种方法,这是你在web上经常看到的一种方法。除了端点之外,PHP还可以在URL中包含其他内容,但是您询问的是基于windows的HTML/ASPX窗口支持的页面。

所以-是的,我看到的唯一没有扩展的方法就是让用户在文件夹中导航。剩下的唯一问题是,你到底为什么要这样做?

票数 0
EN

Stack Overflow用户

发布于 2015-09-12 00:38:12

您可以在web.config文件中使用以下配置:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="niceURL"  stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions>
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="{R:0}.html" appendQueryString="true" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32012297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档