2015-04-07 1 views
0

Как исправить эту проблему переменными $ _SESSION?Сессии прерываются, когда www префикс к URL-адресу

переменные сессии присутствуют, когда я на http://www.example.com, и запустить этот код:

echo 'Printing session variables: <br><br><pre>'; 
foreach ($_SESSION as $key=>$val) 
echo $key. ": ".$val. "<br>"; 
echo '</pre>'; 

Однако, если я на http://example.com, нет переменных сеанса.

Как я могу сделать это так, чтобы $ _SESSIONs работали одинаково, независимо от того, имеет ли префикс www. или нет?

Я хотел бы, чтобы сайт по умолчанию http://example.com, не http://www.example.com

+0

Возможно, это дубликат. См здесь: http://stackoverflow.com/questions/6784654/different-session-with-urls-with-www-and-without-www –

ответ

0

Из комментария The Guest «s, я нашел правильное решение, используя .htaccess файл повторно написать URI, так что www префикс повторно записывается в виде не-WWW, что небольшое изменение на Топ- номинальный ответ here:

RewriteEngine on 
RewriteBase/
RewriteCond %{HTTP_HOST} ^www.example\.com 
RewriteRule ^(.*)$ http://example.com/$1 [R=permanent,L] 

Original answer по умолчанию в виде www.example.com URI; выше изменения по умолчанию все на non-www URI формы.

0

Простой ответ, это добавить строку в файл .htaccess, чтобы заставить URLs быть либо с помощью WWW. или нет www.

Смежные вопросы