PHP сессия.cookie_domain без www

#php #.htaccess #codeigniter

#php #.htaccess #codeigniter

Вопрос:

У меня следующая проблема. Я перенаправляю все доменные адреса с http://www.example.com на http://example.com через файл .htaccess.

Веб-сайт также может иметь поддомены: http://login1.example.com , и т.д. http://other_login.example.com

Возможно ли переносить сеанс между поддоменами? Когда url содержит www , все работает нормально ( session.cookie_domain = '.example.com' ), как я могу решить это без www ? (с использованием CodeIgniter)

Ответ №1:

Чтобы изменить эти настройки, откройте application/config/config.php досье. Где-то в строке 268 вы найдете все настройки, необходимые для выполнения того, что вы хотите сделать.

В приведенном выше примере измените:

 $config['cookie_domain'] = "";
// to
$config['cookie_domain'] = ".example.com";
  

Конечно, можно было бы перенести сеанс между поддоменами, если они используют одно и то же приложение. Я не мог понять, почему это может быть проблемой, если вы используете отдельные приложения, если ваши ключи шифрования одинаковы в обоих приложениях.

Комментарии:

1. Да, это работает довольно нормально, когда url содержит www . Но это не удается, когда я удаляю www часть из url. Приложение работает нормально, я перенаправляю все поддомены на один контроллер, например: user1.example.com = example.com/user_panel/user1 .

2. Можете ли вы в своем веб-браузере увидеть, установлены ли файлы cookie, как ожидалось? Я часто считаю, что стоит удалять файлы cookie браузеров, так как иногда вы получаете случайный файл cookie.