Доступ к сеансу поддомена из основного домена

У меня есть приложение в mydomain.com. Я хочу, чтобы пользователь был перенаправлен на example.mydomain.com при входе в mydomain.com , однако сеанс успешно генерируется в каталоге в example.mydomain.com . Теперь моя проблема после отправки логина, пользователи не могут войти в example.mydomain.com . Хотя есть файлы сеанса, доступны.

Драйвер сеанса – файл (файл конфигурации mydoman.com)

$config['sess_driver'] = 'files'; $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 0; $config['sess_save_path'] = 'mydir/application/session_data'; $config['sess_match_ip'] = FALSE; $config['sess_time_to_update'] = 0; $config['sess_regenerate_destroy'] = FALSE; 

Мое приложение отлично работает на локальном сервере. Но не работает в производстве.

Вы также должны установить cookie_domain и cookie prefix в вашем файле конфигурации, как это

 $config['cookie_prefix'] = "mydomain_"; $config['cookie_domain'] = ".mydomain.com"; $config['cookie_path'] = "/"; $config['cookie_secure'] = FALSE; 

Вы должны иметь это в действии входа:

session_set_cookie_params ($ cookieParams ["lifetime"], $ cookieParams ["path"], $ rootDomain, $ secure, $ httponly) или что-то подобное.

Дело в том, как установить $ rootDomain. Например, у вас есть example.com как основной домен. И что вам нужно сделать:

  1. установите его на example.com, если файлы cookie используются только в основном домене.
  2. установите его на .example.com (с точкой), чтобы файлы cookie отображались на всех поддоменах.

Теперь о session_name () основного и дополнительного домена:

  1. Если они разные, сеанс, созданный из основного домена, отображается для поддомена, но не наоборот. Выход из системы возможен только из основного домена, но не из поддомена.

  2. Если они одинаковы, сеанс, созданный из основного домена, отображается для поддомена и наоборот. Выход из системы может быть выполнен из основного или поддомена.