$_SESSION PHP 没有 www 就无法工作
$_SESSION PHP doesn't work without www
PHP
中 $_SESSION
变量的奇怪问题:
当我在 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 中将 resolve 颠倒过来(没有 www => 有 www),它可以工作,但为什么我不这样做?
我在这里找到了这个 post:
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();
PHP
中 $_SESSION
变量的奇怪问题:
当我在 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 中将 resolve 颠倒过来(没有 www => 有 www),它可以工作,但为什么我不这样做?
我在这里找到了这个 post:
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();