1

我有以下问题:

在一页上,我使用 php 显示一些文章并从数据库中获取它们。文章有两种显示类型:每日和每小时。显示类型存储在 cookie 中。

问题是,每当我使用无限滚动和 ajax 加载其他文章时,cookie 都不会被使用。如果我回显它们,我会收到一个空字符串。此外,当从每小时视图更改为每日视图时,也会出现同样的问题。

为了添加额外的帖子,我使用 jquery post 并加载不同的显示视图,我使用 jquery.load()

我知道有一个跨源策略,但我通过添加 htaccess 来修复它

Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"
Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"

编辑:我也在另一台可以正常工作的服务器上安装了该网站。我注意到在良好的服务器上,ajax 请求也在发送“设置”cookie。在坏的服务器上,只有“PHPSESSID”cookie 正在发送。

4

1 回答 1

0

好的,看来问题是 www 请求是从 www.mydomain.com 到 mydomain.com 我通过在 url 中添加完整路径来修复它

$.ajax({
   url: "www.mydomain.com/ajax.php",
   success: function() ...
});

或者

 SITE_URL = "http://www.mydomain.com";
 $('#wrapper').load(SITE_URL 'index.php?lang='+langSite+' #wrapper', function(data){ ...
于 2013-04-05T11:59:39.183 回答