【发布时间】:2016-01-11 09:40:34
【问题描述】:
我在 localhost 上设置了 CI 3 用于开发,在我的主机文件中使用示例域,在 httpconf 中使用通配符 ServerAlias。 url 加载完美,登录代码运行良好,保存会话,我可以导航登录的系统。
当我向我的测试域的子域发送 ajax 请求时,CI 中的会话似乎丢失了,因此它无法验证用户是否已登录。
假设我的主机文件中的域是:
127.0.0.1 testdomain.com
127.0.0.1 test1.testdomain.com
127.0.0.1 test2.testdomain.com
CodeIgniter 配置为 cookie_domain = ".testdomain.com"。
我可以通过http://testdomain.com:81 登录系统,但只要我通过$.post (jQuery) 向http://test1.testdomain.com 或test2 发送请求。它以我的验证登录代码作为响应,说会话为空。
我有
header('Access-Control-Allow-Origin: *');
在 ajax 正在调用的控制器的顶部。
有什么想法吗?
【问题讨论】:
-
研究
ajax withCredentials允许跨域发送cookies
标签: php jquery ajax codeigniter session