2009-09-09 75 views
0

网站A(比如url:www.a.com)由不同的版本组成:每天都有一个新版本。 但是,该网站并不安宁:该网站正在使用cookie(我认为)来保存用户想要访问的版本。 因此,要访问给定版本的文章,我们必须先提交表单以指定版本,然后获取该版本的文章。 为了我的需要,我只能使用一个url来让用户访问给定版本的文章?有没有办法做到这一点?http request ... cookies

+0

你问是否可以基于cookie值显示不同的url? – madcolor 2009-09-09 01:14:24

+0

我正准备做的事是用搜索引擎视图展示版本的文章。问题如下: 1.搜索引擎抓取不同版本并索引每个版本的文章 2.用户可以搜索文章 3.用户必须能够点击链接并直接转到相关版本。 点3是有问题的,因为这些网址不是“绝对的”。实际上,与文章版本相关的信息不在URL中进行编码(我猜它存储在cookie中)。 – massinissa 2009-09-09 02:02:24

回答

0

在我的其他答案评论,你给的网址:

http://www.liberte-algerie.com/archive.php 

当您访问该页面,您将得到一个PHP会话(与PHPSESSID的cookie)。然后,PHP应用程序可以设置会话变量,这些变量将在会话期间与您相关联。

当你进入该网页上,如“05/04/09”的日期,然后点击“Afficher”按钮,您被定向到这个网址:

http://www.liberte-algerie.com/archive.php?date=05%2F04%2F09&Envoyer=Afficher&act_archive=ok 

看来,当网页被处理,服务器正在存储日期(通过URL参数传入)并将其与会话相关联。日期不会直接作为cookie存储在您的浏览器中。相反,您的会话cookie将您链接到服务器上的会话数据,其中包括该日期。

返回的页面包含的JavaScript代码段:

<script language="JavaScript"> 
location.href = 'index.php'; 
</script> 

这会指引你到索引页面(的index.php)。该页面显然会检查您的会话变量并使用选定日期来决定显示哪些文章。

您将继续看到这些文章,直到您选择其他日期,清除会话cookie或会话过期。

+0

谢谢杰里米所有这些信息! 我猜想用户必须通过两个步骤访问文章: 1.提交版本日期 2.请求该版本的文章 – massinissa 2009-09-09 19:22:17

0

如果你想弄清楚网站是如何工作的,请尝试使用Firefox和Live HTTP Headers访问它。

如果您希望我们弄清楚它的工作原理,请给我们提供网址。

+0

这里是网站:http://www.liberte-algerie.com/archive.php 我没有把网址,因为它是在法国:-) 谢谢 – massinissa 2009-09-09 14:52:17