我的 php 会话有一个小问题 - 当我登录时http://www.domain.com
它可以工作,但是当我删除该http://www.
部分时,我必须再次重新登录。
我需要在 php.ini 中更改什么,以便我可以保持登录状态,无论是否http://www.
存在?
那是因为您的 cookie 已设置,www.domain.com
登录后您尝试从domain.com
. 浏览器会阻止它。
.domain.com
您必须通过设置为 5. 参数来声明 cookie 可被子域访问setcookie()
。
您可能需要检查 php ini 变量 : session.cookie_domain
,它可能被设置为仅适用于完整域,请尝试仅使用子域进行设置。
我已经这样做了(可能不是最好的解决方案,但它可以完成工作)
在.htaccess
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
所以它删除了www。从域并重定向到 http。:)
谢谢大家的帮助。