$_SESSION
中PHP
vars的一个奇怪问题:
当我在www.mywebsite.com $_SESSION
时,vars工作且if(isset($_SESSION[...]))
为true
。但如果我去mywebsite.com(没有www):if(isset($_SESSION[...]))
是false
!为什么以及如何解决这个问题?
我的.htaccess:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mywebsite\.com$
RewriteRule ^/?$ "http\:\/\/mywebsite\.com\/" [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [L]
如果我在我的htaccess中解决了这个问题(没有www =>与www)它会有效,但为什么不这样呢?
答案 0 :(得分:0)
我能在这里找到这篇文章:
php Sessions not work well without www
包含以下解决方案:
session_name("name");
ini_set ("session.cookie_domain", '.domain.com') ;
session_set_cookie_params(0, '/', '.domain.com');
session_start();