使用无扩展名网址有哪些优势?
例如,我为什么要改变......
http://yoursite.com/mypage.html
http://yoursite.com/mypage.php
http://yoursite.com/mypage.aspx
为...
http://yoursite.com/mypage
是否可以为每个页面提供无扩展名的网址?
更新
无扩展网址是否更适合网站安全?
答案 0 :(得分:27)
无扩展URL的原因是它与技术无关。如果您想要更改内容的呈现方式,则无需更改URL。
文件扩展名
这是一个非常常见的问题。 “cgi”,甚至“.html”都会改变。您可能在20年后没有在该页面上使用HTML,但您可能希望今天的链接仍然有效。链接到W3C站点的规范方式不使用扩展....
结论
保持URI以便它们仍然在2年,20年或200年甚至2000年左右,显然不是听起来那么简单。然而,在整个网络上,网站管理员正在做出决定,这将使自己在未来变得非常困难。通常,这是因为他们正在使用工具,其任务被视为在当下呈现最佳网站,并且没有人评估当事情发生变化时链接会发生什么。但是,这里的消息是,很多很多东西都可以改变,你的URI可以而且应该保持不变。他们只有在你考虑如何设计它们时才能做到。
答案 1 :(得分:8)
答案 2 :(得分:5)
人们声称它可以提供更好的搜索引擎优化,即使我个人并不相信。许多客户现在都要求使用这些无扩展名的URL,因此它也可以很容易地实现。
如果您运行的是IIS 7,则可以将AppPool切换为在Integrated Pipeline上运行,从而无需将特定扩展映射到ASP.NET引擎。完成后,您可以指示Sitecore在web.config设置中使用无扩展名网址(假设Sitecore 6):
<linkManager defaultProvider="sitecore">
<providers>
<clear />
<add name="sitecore" type="Sitecore.Links.LinkProvider, Sitecore.Kernel"
addAspxExtension="false" /* This one is set to true, per default */
alwaysIncludeServerUrl="false"
encodeNames="true"
languageEmbedding="asNeeded"
languageLocation="filePath"
shortenUrls="true"
useDisplayName="false" />
</providers>
</linkManager>
你已经定下来了。
请注意,早期版本的Sitecore 6在运行集成管道时存在一些问题。可以找到更多信息here。
答案 3 :(得分:4)
如上所述,其中一个优点是您不会将URLS与特定技术或语言联系起来。此外,其中一个优点是,如果您愿意,可以从应用程序中管理输出格式。
但这仅在“路由”代码框架中相关,您将基本上将url路由附加到代码。
例如,在我的代码库中,您可以通过
指定网址的允许输出格式1)在HTTP标头中设置Accept标头 2)附加URL的有效扩展名
因此/my/simple/url.html,/my/simple/url.xml和/my/simple/url.json的代码完全相同。输出管理员将负责以适当的方式输出内容。
因此,如果您更改基础技术,您仍然可以在新版本的应用程序中保留相同的URL模式。
从那里开始,由于您使用自己的代码解析URL以提取数据,因此它通常使您有机会制作SEO友好的URL,即在搜索引擎索引方面更有意义的URL。然后,您可以在Web应用程序结构中定义更有意义的URL模式。
答案 4 :(得分:0)
我能想到的只是让最终用户更容易记住/打字,除此之外我没有看到任何理由,我也是由我们的管理员运行这个,他说有些人说SEO但是如果他如果要使用它,他会在安全的情况下使用它。
答案 5 :(得分:0)
因为用户不需要了解页面背后的技术。 示例:domain.com/Programs/Notepad