火狐浏览器无法打开本地php,php – 无法在Chrome中访问Cookie,在Firefox中正常运行...

基本情况和基本相关信息:

我有一个在开始之前执行的php代码< doctype>标签.希望是(如有必要)在加载任何其他内容之前根据用户的浏览器语言首选项发送重定向.

该脚本尝试根据支持的最高语言首选项执行两项操作:

>使用php:setcookie()创建一个包含两个字母的语言代码的cookie.

>示例cookie name = value:x_language = es

>使用php:header(“Location:”.$requestedSite);重定向到子域,

>示例域名:es.domain.com

例:

if (isset($_COOKIE['x_language'])) {

-Determine correct subdomain based on cookie value-

-If not currently on that subdomain, redirect to it-

} else {

setcookie('x_language','es',time() + 31536000 ,'/','.domain.com' );

header("Location: " . $requestedSite);

}

问题:

Firefox完美运行. Chrome(和其他浏览器)根本无法识别Cookie.

我把它归结为:

> print_r($_ COOKIE)在Firefox中正常工作,并返回一个可爱的填充数组.

> print_r($_ COOKIE)在Chrome中失败,并返回一个空数组.

这是问题的核心,我的功能无法识别cookie的存在,因为Chrome没有.

>我确保每个浏览器都接受cookie.

>我已经检查了开发工具,以确保所有浏览器都存在cookie,(确实如此).

>我意识到cookie的值在下一页加载之前是不可用的,但这不是问题.即使在设置之后,也不会读取.

>初始setcookie()之上没有输出;

那么如何让Chrome(和其他浏览器)识别自己的Cookie?!有谁知道为什么这会在Firefox上完美运行但在其他地方失败?

在云雀上我决定尝试这个.我创建了一个只包含以下内容的文件

print_r($_COOKIE);

?>

再一次,我在Firefox中看到了cookie数组.同时,在Chrome,IE,Opera,Safari中,我得到一个空数组.这可能是服务器问题吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值