Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Justicet

IPB 3.4.6 - проблема с входом в форум

Рекомендованные сообщения

Доброго дня!

Сильно не пинайте - и поиском пользовался, и пытался рассмотреть возможности аналогичных ошибок, но...

Смысл такой:

Вследствие проблем с ФС в дата-центре убился мой ВДС, мне соответсвенно предоставили новый, однако пришлось устанавливать Апач + Мускул + нгинкс + пшп самостоятельно, ну и настраивать. Однако это вроде как не проблема - уже не раз это делал, сохранил настроечные файлы как образцы и т.п. Тем более, что зеркало форума крутится на домашнем ноуте.

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

Уже голову сломал на предмет из-за чего это! И проверял подключенные модули, и настраивал/перенастраивал куки и т.п.

Что еще предложите в виде варианта? может какой файл у меня битый?

Однако все копировалось с зеркала и на локалхосте вхожу в аккаунт нормально.

Пока никаких параноидальных настроек в Апач и нгникс не вносилось...

З.Ы. при этом регистрация нового пользователя проходит нормально. Если ввожу заведомо неверные данные - отфутболивает как положено. Изменение пароля юзера со всеми хешами не помогает - не происходит вход в аккаунт.

Поделиться сообщением


Ссылка на сообщение

У вас не работают cookies, браузер не получает куки с сервера. В настройках кукисов очистите все, возможно что-то не правильно вписали, тем более домен у вас кириллический. С ац в этом плане проблем нету, там авторизация происходит по сессии которая передается в адресной строке.

Поделиться сообщением


Ссылка на сообщение

До падения VPS (так же с кириллическим доменом) все работало идеально.

Куки были прописаны как:

.xn--3-9sbb9af2c.xn--p1ai

что соответсвует моему домену.

При очищении всех полей настроек кукисов - в браузере ничего не устанавливается. При настройках:

domen = .xn--3-9sbb9af2c.xn--p1ai 
path= /forum/

данные куки прописываются в браузере, но авторизоваться все равно не возможно.

 

Есть еще какие-либо варианты? Может что-то на промежуточном этапе (настройки Апача или нгникс`а) накосячено?

Поделиться сообщением


Ссылка на сообщение

данные куки прописываются в браузере, но авторизоваться все равно не возможно.

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

 

Может что-то на промежуточном этапе (настройки Апача или нгникс`а) накосячено?

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

 

Попробуйте проверить работу кукисов вне окружения форума, создайте файл который устанавливает любую куку:

 

<?php
setcookie('test', 'test');
?>

Поделиться сообщением


Ссылка на сообщение

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

ну нгник`с-то вроде как прокси сервер. Завтра отключу его, настрою апач напрямую - посмотрим что выйдет.

 

Попробуйте проверить работу кукисов вне окружения форума, создайте файл который устанавливает любую куку:

<?php
setcookie('test', 'test');
?>

создал файл с этим содержимым в корне сайта (выше папки /forum) - ничего не отдал при обращении к этому файлу. Т.е. я ничего не нашел в перечне куки браузера.

Поделиться сообщением


Ссылка на сообщение

Поставьте apache чтобы слушал внешний ип адрес, и обратитесь к скриптам через порт на котором находится апач, скорее всего это будет 8080 - site:8080/test.php

Поделиться сообщением


Ссылка на сообщение

Поставьте apache чтобы слушал внешний ип адрес, и обратитесь к скриптам через порт на котором находится апач, скорее всего это будет 8080 - site:8080/test.php

Перевел апач на внешний адрес. Получил что хотел:

post-42804-0-98000200-1403941045_thumb.png

После чего перенастроил апач слушать порт 80 и получил нормальную работу форума:

post-42804-0-59403500-1403941269_thumb.png

Вывод: косяк в настройках нгинкса - будем мучать.

Поделиться сообщением


Ссылка на сообщение

Разобрался с настройками нгинкса.

Дело было в настройках кэширования ответов от Апача. Были применены следующие настройки:

#указать имя зоны кеширования и включить
		proxy_cache cacheone;
# Кешировать указанные коды ответов 5 минут
		proxy_cache_valid 200 301 302 304 5m;
# Ключ по которому сохраняются и берутся данные из кеша
		proxy_cache_key "$request_method|$http_if_modified_since|$http_if_none_match|$host|$request_uri";
# Защита от раздачи одинаковой куки в кешированном ответе
		proxy_hide_header "Set-Cookie";
# Игнорировать параметры кеша заданные бекэндом
		proxy_ignore_headers "Cache-Control" "Expires" "Set-Cookie";
# Указывает в каких случаях клиенту можно отдать несвежий ответ из кеша
		proxy_cache_use_stale error timeout invalid_header http_500 http_502 http_503 http_504;

Эти настройки были внедрены в location, в котором описывалось проксирование запросов на Апач. И по какой-то причине при этих настройках куки не передавались браузеру и не устанавливались.

Хотя везде описывается, что с данными настройками можно кэшировать динамические страницы (например тут), но у меня почему-то этот финт не прошел.

На данный момент кэширование отключено.

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

 

Еще покурив мануалы нгинкса решил перестроить локацию проксирования до такого вида:

		location ^~ /forum/ {
		proxy_pass http://localhost:8080;
		proxy_redirect http://localhost:8080/ /;
		proxy_set_header Host $host;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header X-Forwarded-Proto $scheme;
		proxy_set_header X-Real-IP $remote_addr;
	}

Описание локаций взято отсюда. Теперь, как понимаю, все запросы вида "сервер/forum/*" будут проксироваться на Апач.

Головная страница проекта обрабатывается нгинксом (т.к. там сплошная статика) через локацию:

	location = / {
		root   $root_path;
		index index.html index.htm ;
}

Поделиться сообщением


Ссылка на сообщение

В принципе так я и думал http://phpclub.ru/ta...37/#post-619944

 

Вот- вот. Только я совсем отключил кэширование (временно, пока не найдется выход из положения).

Интересно как теперь быть, ведь директива " proxy_hide_header "Set-Cookie"; " как раз предотвращала выдачу одинаковой куки разным пользователям?

Задам сей вопрос на официальном сайте nginx - посмотрим, что там ответят/порекомендуют.

По результатам отпишусь сюда - вдруг кому потребуется...

Поделиться сообщением


Ссылка на сообщение

Добрый вечер!

 

Можно обновлю тему,только у меня в корне обратное, не работает кнопка "Выход"

 

При нажатии страница обновляется но ничего не происходит.

 

Чищу кэш браузера, захожу-выхожу корректно ровно один раз, затем снова захожу и кнопка выход уже не работает.

 

Причем сломалось сразу на двух форумах, боевой и тестовый расположенных на одном хостинге.

 

Ответ от ТП хостинга:

 

Судя по всему - где-то в настройках CMS настроено кеширование страниц сайта на стороне браузера (посетителя).

Так как в ответе сервера присутствует строка:

Last-Modified: Wed, 28 Mar 2018 17:41:14 GMT

Expires: Wed, 28 Mar 2018 17:41:14 GMT

Cache-Control: private, no-cache, no-store, must-revalidate, max-age=0

 

Получается что при первом входе-выходе все работает правильно.

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

 

Если подобная настройка в админке и похоже ли это на кэш?

 

Спасибо!

post-57522-0-14737000-1522262581_thumb.png

Поделиться сообщением


Ссылка на сообщение
03/29/18 04:21 (изменено)

Еще дополнение, обнаружил что в Internet Explorer, в Гугл хром Версия 49.0.2623.112 корректно выходит и заходит, в более новой версии гугл хром не заходит, в мозиле 45-ой версии тоже нет, опере - нет.

 

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

 

Получается не во всех браузерах работает.

Изменено пользователем shtoki

Поделиться сообщением


Ссылка на сообщение

Получается не во всех браузерах работает.

Не думаю, что проблема в форуме. У других юзеров как обстоят дела?

Поделиться сообщением


Ссылка на сообщение

Не думаю, что проблема в форуме. У других юзеров как обстоят дела?

 

У других юзеров было тоже самое.

Вы правы, проблема была на стороне хостинга, по ошибке включили кеширование динамически генерируемого контента.

Сейчас все ок!

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...