当然会有助于查看代码,或者知道实时 URL,但这里有......
我想你已经有代码来做重定向,你只需要一个系统来知道什么时候重定向,什么时候不重定向?
几个建议:
- 检查内容页面中的引荐来源网址,如果它不是您的 AJAX 请求,则进行重定向(不确定您的 AJAX 代码是否会填充引荐来源网址,如果没有,则如果有引荐来源网址,则进行重定向,因为搜索引擎将始终有推荐人)
- 在调用 ASP 页面时存储一个 Session 变量,并检查它是否存在于内容页面中,如果不存在则进行重定向
- 在调用 ASP 页面时存储一个 Cookie,并检查它是否存在于内容页面中,如果不存在则进行重定向
- 将您的 AJAX 请求更改为表单 POST 而不是 GET,如果不是 POST,则在内容页面中进行重定向
编辑:
我没有想到的一件事是,如果您使用我的任何建议,搜索引擎可能无法抓取这些页面,因此我还建议您添加用户代理检查以允许抓取工具
查看您的代码后,我会将以下内容添加到您的 ASP 无样式页面的顶部。
strAgents = "Google|msnbot|Rambler|Yahoo|AbachoBOT|accoona|AcioRobot|ASPSeek|CocoCrawler|Dumbot|FAST-WebCrawler|GeonaBot|Gigabot|Lycos|MSRBOT|Scooter|AltaVista|IDBot|eStyle|Scrubby"
arrAgents = Split(strAgents, "|")
blnAgent = False
For i = 0 to UBound(arrAgents)
If InStr(Request.ServerVariables("HTTP_USER_AGENT"), arrAgents(i)) <> 0 Then
blnAgent = True
Exit For
End If
Next
If Not blnAgent Then
If Request.ServerVariables("HTTP_REFERER") <> "http://www.uleth.ca/lib/archives/timeline/" Then
Response.Redirect("http://www.uleth.ca/lib/archives/timeline/#19xx?zoom_highlight=19xx")
End If
End If