利用ASP或PHP或JSP等代码实现用同一个域名进入2个不同页面。请看问题补充
当从IE栏中直接输入域名时,出现的是A页面的内容;但是如果这个域名是从百度搜索结果中点击进去的,则显示的是B页面内容。
我的思路是通过文件头来实现,即 (域名+index.asp)=A页面,
( 域名+index.html)=B页面。就是我说的当我们从IE中直接输入域名时,是(域名+index.asp)=A页面;但是从百度搜索结果中点击进去域名则出现( 域名+index.html)=B页面。。。
或或是简化思路。只要是直接从IE栏中输入的域名,则只显示A页面内容。这里的手法无论是跳转或是其他都可以,只要能实现就OK。
我只有思路,但是不懂代码。所以请高手看看能否实现。小弟感激不尽。总共100分,全拿出来。
补充:1楼的回答贴边,但是代码没法用。我可以给大家举例说明:
假如域名是 www.zzzyk.com 当我在IE地址栏中输入 www.zzzyk.com 后,网站打开的页面是 www.zzzyk.com/index.asp 但是如果我是通过搜索引擎点击(或是通过其他站的友情链接点击进入到的 www.zzzyk.com ,则打开的页面是 www.zzzyk.com/index.html
当然 index.asp 和index.html 我可以做成不同的页面。这就是我的目的。
答案:ASP示例
<%
If Request.ServerVariables("HTTP_REFERER")="" Then
' 直接从地址栏或收藏夹访问
' 你的A页面内容
Else
' 通过链接访问b(这里可以进一步判断HTTP_REFERER,以确定是从哪个页面转入的)
' 你的B页面内容
End If
%>
那你只能用JS,而且楼主你犯了一个很严重的错误,那就是如果从搜索引擎过来,URL不可能只是你的域名,URL通常都会直接指向一个页面.如果你仅通过index.html或index.asp来判断的话,等于没做.要做,就要给所有页加JS判断.
<script language="javascript">
if(document.referrer=='') location.href='/index.asp';
else location.href='/index.html';
</script>
这只是一个例子,以上代码可以说明你想要的效果,但却不能直接使用.因为这可能是一个死循环,所以你还必需加入判断location.href的语句.
其他:对于你的这种情况,可能是由于搜索引擎收录的并不是你的网站的首页,所以才导致出现这样的问题的。
个人觉得没有必要写什么代码!!! 不知道楼主这样做的目的是什么,一般你网站域名打开的是你的默认首页页面(多个首页页面的时候,会默认打开优先级比较高的首页页面),简单的你可以在index.asp里面加入301重定向代码,这样打开index.asp的页面就转入到index.html的页面,代码可以参考:
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://域名/index.html"
%> 你这么做的目的是什么?最简单是是你设计一个页面,上面写上两个连接,一个连接A页面,一个连接B页面。想进哪个点哪个就是了。 yanzilisan183 说的靠谱,说白了就是来路判断。根据HTTP_REFERER,可以得到访问者的来路,然后再做你说的处理。把分给yanzilisan183 吧。 php
if(!isset($_SERVER['HTTP_REFERER'])) 判断来路
header('location: url');// url改为你要显示的页面地址 非同一站点加http://
上一个:请帮我看看以下的两个jsp代码。怎么回事,我看着没有什么问题啊,就是编译不出来,请大家帮我看看,在此重
下一个:请高手看看以下图片中的JSP代码哪里有问题了,为啥我自己用网站就连不到数据库了呢。。。。。