FAQ: Проблема со входом/выходом (настройки cookie)

Темы по наиболее часто задаваемым вопросам по phpBB 2.0.x. Читать в первую очередь!
Alagert

FAQ: Проблема со входом/выходом (настройки cookie)

Сообщение Alagert » 04.08.2004 10:13

Проблема в следующем: когда я вхожу под ником, ввел логин и пароль, нажал "вход" и я уже вроде отображаюсь на форуме как пользователь, а у меня в окне опять табличка с входим висит, и когда я хочу написать что-то, пишет, что я еще не вошел. Все работает только после повторного ввода логина и пароля. В чем проблема?

==================================

Ответ

Причины этой и подобных проблем
- после логина вас выбрасывает на пустой экран или на страницу 404, но после клика в браузере "назад" вы оказываететсь залогиненым
- вас выбрасывает на страницу 404 при попытке логина в административную панель
- вам приходится повторно вводить логин/пароль
- вас перебрасывает непонятно, куда, когда вы логинитесь или пытаетесь зайти в административную панель
- не работает автологин
- темы не отмечаются как прочитанные
- ...
в подавляющем большинстве случаев кроются в неверной настройке кук (cookies) на сервере или в неверно сохраненных куках на клиентском компьютере. По второй причине сказать что-либо более определенное, чем "прочистите куки", без анализа конкретной системы трудно, а вот избавление от первой причины целиком и полностью в руках админа форума. Итак, как настраивать куки.

Важно! После любых манипуляций с параметрами кук на сервере необходимо удалить куку форума с клиентского компьютера и перезагрузить браузер. Кука -- это файл. Применительно к NT based Windows куки лежат в каталоге %USERPROFILE%\Cookies (этот каталог имеет атрибут hidden, поэтому разрешите показ скрытых и системных каталогов в вашем файловом менджере). Имя файла куки формируется как
%USERNAME%@<начало_имени_вашего_домена>[<номер>].txt
Обратите внимание на [<номер>] -- удалять надо все куки вашего сайта (если честно, то нет, но если вы понимаете, о чем идет речь, то сами разберетесь, какой файл удалить, а если нет -- то уж удалите все, так проще будет). Если написанное для вас непонятно, то идите в настройки вашего браузера, ищите то место, которое относится к cookies и удаляйте все куки (для IE это Tools -> Internet options -> General tab -> Delete Cookies... Для русскоязычных интерфейсов систем/браузеров ищите по подобию, у меня их нет). Но помните -- при этом вы удалите куки всех сайтов, на которых вы были, со всеми вытекающими.

В базе знаний на сайте разработчиков есть англоязычная статья по правильной настройке кук (http://www.phpbb.com/kb/article.php?article_id=324). Ее перевод на русский язык опубликован на http://myphpbb.com.ru/go/viewtopic.php?t=13939. Этот перевод грешит мелкими неточностями, поэтому я рискну все-таки предложить его вашему вниманию в слегка переработаном и дополненом виде.

Итак. Для настройки кук у вас есть два пути. Во-первых, можно установить мод Auto Cookies (http://www.phpbb.com/phpBB/viewtopic.php?t=228741). Скачать с phpbbGuru Это если вы себя в установке модов чувствуете сильнее, чем в ковырянии в базе данных. Во-вторых, можно все установить вручную. На этом пути может быть три случая.
1. Вы такой умный и прилежный админ, что с какого-то перепугу прочли эту статью еще до установки форума. Тогда вам нужно только правильно ответить на вопросы в процессе инсталяции. Между прочим, у очень заметного числа админов (включая автора) замечательным образом работают дефолтные значения...
2. Вы хотите исправить настройку кук и еще не потеряли доступа к панели администрирования форума (ACP). В этом случае все выполняется из этой панели в разделе Общие настройки -> Конфигурация.
3. Вы наковырялись до такой степени, что потеряли доступ к ACP. В этом случае исправления вносим прямо в базу. Либо хостер вам предоставляет для этого некий фронт-энд (скорее всего, phpMyAdmin), либо вы оный инструмент должны установить сами (http://www.phpmyadmin.net вам в руки). Все параметры, о которых мы говорим, находятся в таблице ***config, где *** -- заданный вами при установке форума префикс таблиц (по умолчаниюphpbb_). Эту таблицу и редактируем. И не надо вопить "У меня в ней нет таких полей!!!". Обратите внимание на то, что таблица длинная, выводится по-странично и на странице есть навигация для перемещения вглыбь и обратно.

Теперь о правилах записи.
1. Если у вас (у хостера) не стоит какой-нибудь уж слишком уродский веб-софт, всегда используйте во всех записях прямой слеш "/" (slach, forward slash). Обратный слеш "\" (back slash) используйте тогда и только тогда, когда вам на это прямо указано.
2. При вводе Имени сервера (Domain Name) форума нельзя писать http:// -- эта часть записи, скопираванной вами из адресной строки браузера, является не частью имени, а обозначением протокола.
3. Аналогично, если веб-сервер работает на нестандартном порту (в конце адресной строки вам надо вводить что-то типа :1234), не надо считать этот номер порта частью доменного имени. Для записи номера порта, на котором откликается сервер, есть специальное отдельное поле.
3. Путь к форуму (Script Path) обязательно начинается слешем и слешем заканчивается.
4. Если вы задаете Домен куки (Cookie Domain), то в нем не пишется www. Кроме того, в этом параметре должно быть как минимум две точки. Если в существующем имени содержится только одна точка, необходимо поставить еще одну прямо перед именем домена.
5. В Пути куки (Cookie Path) слеш пишется только в начале.
6. В Имени куки (Cookie Name) не может быть пробелов и точек.

Ну, а теперь самое интересное -- примеры. В скобках к каждому термину приведено его написание в русскоязычном интерфейсе и имя поля в таблице ***config базы данных.

Адрес форума: http://www.yoursite.com/forum/
Рекомендуемые настройки:

Domain Name (Имя сервера, server_name): http://www.yoursite.com (не содержит http://, это имя протокола)
Script Path (Путь к форумам, script_path): /forum/ (путь от корня сайта к папке форума со слешами в начале и в конце)
Cookie Domain (Домен куки, cookie_domain): .yoursite.com (обратите внимание на точку в начале, домен куки всегда содержит минимум две точки)
Cookie Path (Путь куки, cookie_path): /forum (путь к форуму без слеша в конце)
Cookie Name (Имя куки, cookie_name): my_site_cookie (любое имя без пробелов и точек)
Session Length (seconds) (Длина сессии (в секундах), session_lenght): 3600 (может быть разным, но значение по умолчанию 3600 вполне разумно)

Адрес форума: http://forum.coolforums.net/
Рекомендуемые настройки:

Domain Name (Имя сервера, server_name): forum.coolforums.net (не содержит http://, это имя протокола)
Script Path (Путь к форумам, script_path): / (поскольку никаких дополнительных каталогов нет, просто слеш)
Cookie Domain (Домен куки, cookie_domain): forum.coolforums.net (две точки уже есть и дополнительная в начале не нужна)
Cookie Path (Путь куки, cookie_path): / (путь к форуму без слеша в конце)
Cookie Name (Имя куки, cookie_name): cool_cookie (любое имя без пробелов и точек)
Session Length (seconds) (Длина сессии (в секундах), session_lenght): 3600 (может быть разным, но значение по умолчанию 3600 вполне разумно)

Адрес форума: http://www.discussionforums.co.uk/phpBB2/forum/
Рекомендуемые настройки:

Domain Name (Имя сервера, server_name): http://www.discussionforums.co.uk (не содержит http://, это имя протокола)
Script Path (Путь к форумам, script_path): /phpBB2/forum/ (путь от корня сайта к папке форума со слешами в начале и в конце)
Cookie Domain (Домен куки, cookie_domain): discussionforums.co.uk (две точки уже есть и дополнительная в начале не нужна)
Cookie Path (Путь куки, cookie_path): /phpBB2/forum (путь к форуму без слеша в конце)
Cookie Name (Имя куки, cookie_name): my_site_cookie (любое имя без пробелов и точек)
Session Length (seconds) (Длина сессии (в секундах), session_lenght): 3600 (может быть разным, но значение по умолчанию 3600 вполне разумно)

/DiOs

Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Зарегистрирован: 13.03.2004 21:27
Поблагодарили: 2 раза

Сообщение Xpert » 04.08.2004 13:49

Необходимо правильно отредактировать параметры cookie в разделе "Конфигурация" администраторского раздела.

Имя cookie - можно имя домена без префиксов и зоны, например phpbbguru
Путь cookie - обычно "/"
Домен cookie - ваш домен (без www)
Последний раз редактировалось Xpert 24.04.2005 13:19, всего редактировалось 1 раз.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений

khanele
phpBB 1.0.0
Сообщения: 5
Зарегистрирован: 23.07.2005 3:03

Сообщение khanele » 05.08.2005 4:06

Пробовала ввести имя своего домена в графу имя cookie, а оно не поместилось, потому что слишком длинное. Что делать? Помогите, пожалуйста.

Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Зарегистрирован: 12.11.2004 0:20
Поблагодарили: 13 раз

Сообщение VVVas » 05.08.2005 13:03

automan писал(а):если адресс форума например
www.mydomen.ru/phpBB
то там где Домен cookie
писать mydomen.ru или mydomen.ru/phpBB
?
Написано же домен, а не абсолютный путь к форуму.
khanele писал(а):Пробовала ввести имя своего домена в графу имя cookie, а оно не поместилось, потому что слишком длинное. Что делать? Помогите, пожалуйста.
Напишите что-нибудь покороче. Это же имя куки.
я люблю daft punk | новый sugoi.ru

CrazyMan
phpBB 1.0.0
Сообщения: 5
Зарегистрирован: 14.01.2006 0:25

Сообщение CrazyMan » 14.01.2006 0:30

Доброго времени суток +)
У меня немного сложнее ситуация: форум локальный, но с выходом в инет. То есть основная масса пользователей - локальщики, для них свой домен получается, а для внешних юзеров - другой домен. Что делать с корректным входом и выходом для ВСЕХ? +)
Автологин помогает, но это не выход из положения.

Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Зарегистрирован: 13.03.2004 21:27
Поблагодарили: 2 раза

Сообщение Xpert » 17.01.2006 12:35

Установите мод Allow Multiply Domains, есть в нашей коллекции. Параметр "Домен cookie" в администраторском разделе сделайте пустым.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений

Аватара пользователя
natali
phpBB 2.0.1
Сообщения: 293
Зарегистрирован: 30.05.2005 12:18
Откуда: Киев

Сообщение natali » 07.02.2006 11:23

есть МЕГА МОД - называется автокуки.

все настройки выставляет САМ!

ищите и будет вам ЩАСТЬЕ!

CrazyMan
phpBB 1.0.0
Сообщения: 5
Зарегистрирован: 14.01.2006 0:25

Сообщение CrazyMan » 07.02.2006 20:49

к сожалению, мод "Auto cookie" хоть и хорош по своей сути, но проблему 2-х доменов он не решил.
Он правильно выставил настройки кукис, будто у меня форум только в локалке :(
Опять же поставил мод мультидомена, удалил из правильных настроек запись о домене-кукис и... ни-че-го!

Drunia
phpBB 1.4.2
Сообщения: 54
Зарегистрирован: 05.12.2005 23:20

Сообщение Drunia » 06.03.2006 16:33

Всем привет! Не уверен, что в нужную тему пишу, но проблемма похожая. На моём форуме (2.0.19) всё прекрасно работало и на 18-ой версии и сейчас всё ок. Но вот зарегился новый юзер и у него возникли проблемы со входом на форум. Вернее он логинится без проблемм, но у него не открываются некоторые ветки.
Кукисы я выставлял очень давно, пользуя автокукисный мод. Проверил права пользователя на просмотр веток - всё ок, но войти не может. Включил юзера в группы, которые могут видеть всё - не помогло. Дал юзеру модерские права на неоткрываемую им ветку - не помогло, так и не может войти. Сам зашол под его ником - всё прекрасно, дал ему пар и лог от заведомо рабочего аккаунта - не помогло. До всех этих процессов он стёр свои куки. Давай ему прямую ссылку на ветку в тот момент, когда он был залогинен - выкидывает на список форумов. Возможности поставить другой броузер у него нет, пользуется как и я IE 6.
Вывод: проблемма однозначно на стороне юзера.
Вопрос: Что может влиять (брандмауер, порты, IE безопасность, прокся, ещё что-нибудь) таким образом на отображание веток у отдельновзятого юзера? Что можно попробовать для решения проблеммы? Повторюсь, что у всех остальных всё работает.
Заранее благодарю.

Аватара пользователя
natali
phpBB 2.0.1
Сообщения: 293
Зарегистрирован: 30.05.2005 12:18
Откуда: Киев

Сообщение natali » 06.03.2006 17:24

самый просто вариант - он просто парит мозг.

Drunia
phpBB 1.4.2
Сообщения: 54
Зарегистрирован: 05.12.2005 23:20

Сообщение Drunia » 07.03.2006 0:05

Забыл добавить, что при нажатии юзером на одной из веток страница обновляется. То есть он никуда не переходит, а остаётся на списке форумов. В адресной строке ничего не меняется и остаётся phpBB2/index.php

Добавлено спустя 2 минуты 46 секунд:
natali писал(а):самый просто вариант - он просто парит мозг.
Нет, Натали, это точно не так. Ничего он не парит. Дело в том, что он выходит в Нет с работы. Машину его обслуживают админы, поэтому-то он и не может сменить броузер. Вероятно у него что-то закрыто админами. Мне бы хотелось понять что это может быть.
Последняя инфа: его в профиль так же не пускает.

Добавлено спустя 6 часов 37 минут 12 секунд:

Ап

Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Зарегистрирован: 12.11.2004 0:20
Поблагодарили: 13 раз

Сообщение VVVas » 07.03.2006 11:22

Кстати, к господам с неработающим автовходом, у вас в БД таблица sessions_keys есть? И её определение в includes/constans.php есть? И каковы настройки на сохранение автовхода?
я люблю daft punk | новый sugoi.ru

Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Зарегистрирован: 13.03.2004 21:27
Поблагодарили: 2 раза

Сообщение Xpert » 07.03.2006 11:48

VVVas
Кстати, отличная мысль :)
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений

sergep
phpBB 1.2.0
Сообщения: 13
Зарегистрирован: 10.01.2006 14:13

Сообщение sergep » 27.03.2006 15:18

народ сразу сори за глупый вопрос
раньше просто никогда не обращал внимание

а автовход должен отрабатывать после того как вошел и вышел по кнопке "Выход" ?

или если вышел то в следующий раз нужно обязательно опять логиниться ?

Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Зарегистрирован: 12.11.2004 0:20
Поблагодарили: 13 раз

Сообщение VVVas » 27.03.2006 15:56

sergep писал(а):если вышел то в следующий раз нужно обязательно опять логиниться ?
именно
я люблю daft punk | новый sugoi.ru

Вернуться в «FAQ (phpBB 2.0.x)»