我的网站上有一些页面是纯HTML页面,但我想在这些页面中添加一些ASP .NET类型的功能。我担心的是,如果我简单地将.html页面重命名为.aspx,我将破坏链接,并丢失SEO,等等。
我认为如何处理这种情况有一个“最佳实践”。
答案 0 :(得分:5)
在aspx上创建新页面,只从HTML页面提供301个永久重定向。
搜索蜘蛛足够聪明,可以意识到内容已经移动,不会对您造成惩罚。
谷歌和雅虎都说他们解析元刷新没有延迟作为301重定向,所以只做这样的事情:
<html>
<head>
<title>Moved to new URL: http://example.com/newurl</title>
<meta http-equiv="refresh" content="0; url=http://example.com/newurl" />
<meta name="robots" content="noindex,follow" />
</head>
<body>
<h1>This page has been moved to http://example.com/newurl</h1>
<p>If your browser doesn't redirect you to the new location please <a href="http://example.com/newurl"><b>click here</b></a>, sorry for the hassles!</p>
</body>
</html>
答案 1 :(得分:3)
如果您控制IIS - 您可以将.HTML映射到ASP.NET处理程序并按原样运行它们。或者,将它们映射到自定义HttpHandler并发送带有更新位置的301代码。
答案 2 :(得分:0)
您可以使用ISAPI重写将.html网址重定向到.aspx网址。
这里的想法是您将所有现有页面重命名为.aspx,但将所有传入请求作为永久重定向(301)处理到新的.aspx页面。这意味着* .html的所有传入链接都将找到正确的* .aspx页面。
答案 3 :(得分:0)
所有这些都可行,但我认为很大程度上取决于页面内容,需要添加的编程量以及未来的计划。如果它们受到搜索引擎的重视,
但是,一般情况下,我认为最好的办法是创建新页面,然后将页面重定向到.aspx页面。或者,您可以执行URL重写以显示.aspx页面,同时保留URL相同,但这不是一个非常可扩展的解决方案。
答案 4 :(得分:-2)
如果新的ASP.NET功能很小,我建议在HTML中包含IFrame,它链接到包含次要动态更改的新创建的ASP.NET页面。
答案 5 :(得分:-2)
转换到aspx不应该破坏任何SEO