- Как решить проблему неработающей авторизации?
- После обновления сайт полетел
- После обновления битрикс не работает авторизация
- Начальные требования
- У нас часто спрашивают, сколько нужно заплатить
- Баллы опыта
- Тесты и сертификат
- Комментарии к урокам
- Для преподавания оффлайн
- Если нет интернета
- Как проходить учебный курс?
Как решить проблему неработающей авторизации?
Что делать если на каждый хит теряется авторизация? Простому пользователю проще будет написать в техподдержку. А разработчик сайта может сам легко продиагностировать эту проблему не дожидаясь ответа техподдержки. Для гуру веб разработок материал, возможно, будет не очень интересен. А для тех, кто хочет такими стать, предлагаю доступное изложение работы механизма авторизации.
Когда поступает обращение в техподдержку с такой проблемой, мы классифицируем его как простое. Потому что понимая механизм работы авторизации можно быстро локализовать проблему. В частых вопросах коротко описаны основные проблемы, хочу показать обоснование.
Как это работает
В своей основе технология веб сайтов (протокол HTTP) не предполагает идентификацию пользователей: соединение с сервером не поддерживается, каждый переход по страницам — новое подключение к веб серверу.
Чтобы различать запросы в php используется механизм сессий . Принцип следующий: при первом заходе на сайт посетителю присваивается уникальный идентификатор (идентификатор сессии, далее PHPSESSID), браузер сохраняет его у себя, сервер хранит некоторую информацию для этого идентификатора (например о том, что он авторизован). Затем при каждом новом переходе вся сохранённая информация (данные сессии) читаются интерпретатором php и передаются скрипту.
А значит проблемы начнутся когда: сервер не выдаст ID, клиент не сохранит ID или сервер не сохранит данные сессии.
PHPSESSID передаётся через заголовки HTTP — эта часть служебной информации, которая не показывается браузером. Для её просмотра нужно использовать специальные инструменты (бесплатные), самые популярные: прокси сервер Fiddler , плагины FireFox FireBug и livehttpheaders . Последний — простой плагин, которым я воспользуюсь для иллюстрации вопроса.
Через меню инструменты делаю открываю окно «Live HTTP Headers» и делаю первый хит на сайт (все куки очистил):
Подсветкой выделил ключевую строку (часть идентификатора скрыл с тем чтобы у особо пытливых читателей не было соблазна ходить под моей сессией).
Здесь сервер указал, что мне следует сохранить в куки PHPSESSID. Если этого не произошло — дальше ничего не пойдёт. Верный признак проблемы: в заголовке нет ни одной записи Set-Cookie . В подавляющем большинстве случаев это говорит о том, что до старта сессии был вывод на экран. После этого php не может изменить заголовки HTTP. Типичный пример из файла /bitrix/php_interface/dbconn.php :
Также надо обратить внимание на файл init.php в этой папке, к нему те же требования.
Может быть ситуация, когда проблема в настройках сервера, это легко проверить нашим скриптом: bitrix_server_test.php (чтобы сессии работали на сервере нужна поддержка сессий в php, указана папка сохранения сессий и у php были права на запись в эту папку).
Работа с куками
Кука была сохранена, то на следующий хит браузер должен передать PHPSESSID на сервер.
Редко встречаются проблемы в работе браузеров, чаще идентификатор не передаётся в результате неправильного сохранения . Поясню. На прошлом изображении в строке Set-Cookie есть запись:
domain=1c-bitrix.ru . Она определяет, на какой домен будет распространяться кука. Для браузеров действуют простые правила безопасности:
— нельзя сохранить куку в другом домене . Например, сайт 1c-bitrix.ru не может выставить куку для домена mail.ru , если домен не будет соответствовать — она просто будет отброшена;
— куки из верхнего домена распространяются на поддомены. Например, указали 1c-bitrix.ru , открываем dev.1c-bitrix.ru или www.1c-bitrix.ru — кука должна передаваться. Наоборот не будет работать: кука домена www.1c-bitrix.ru не подхватится на 1c-bitrix.ru .
— если не указан домен — кука привязывается к текущему домену, но не распространяется на поддомены .
Битрикс указывает домен в куки из настроек сайта. А значит убедитесь, что в настройках сайта указаны правильные домены (поле Доменное имя ).
На этот и все последующие хиты в ответе сервера кука PHPSESSID не должна выдаваться:
Если браузер передал PHPSESSID, а сервер всё равно выдал новый, значит он либо не сохранил сессию у себя (проверить папку и права на неё, часто бывает неправильно указан путь в windows, используются обратные слешы \ вместо прямых / ) либо сессия истекла и сервер её удалил (между хитами должно пройти какое-то время).
Если тест сервера показывает, что сохранение сессий работает, сессии PHPSESSID сохраняется и передаётся, но авторизация всё равно теряется, значит проблема в настройках битрикса. Приходилось сталкиваться с ситуацией, когда интернет-провайдер периодически меняет IP адрес клиента, тогда срабатывает настройка привязки к IP в настройках безопасности группы пользователей. В этом случае следует установить привязку 0.0.0.0 .
Это основные проблемы, встречаются экзотические ситуации, но очень редко. Большинство проблем с авторизацией, а также сохранением данных с ошибкой Ваша сессия истекла или Ошибка безопасности диагностируются как показано здесь.
Источник
После обновления сайт полетел
| Цитата |
|---|
| Виталий Шестаков написал: Зайдите в используемую бд и выполните: |
После обновления сломался сайт (1С-Битрикс: Управление сайтом 20.200.500, PHP 7.2.25):
— слетает авторизация (теряется сессия) и невозможно зайти в админку или на любую другую страницу. Сессия теряется с любым пользователем.
— если поставить галочку «запомнить» авторизацию, то в админку зайти можно. НО. Не работает ни одна кнопка «Сохранить», «Изменить» и т.п. Т.е. невозможно сделать никаких активных действий (сохранить настройки, сохранить элемент инфоблока).
Впервые такая фигня.
Что делать, кроме, как откатиться?
| Цитата |
|---|
| Сергей Иванов написал: Коллеги, приветствую! |
После обновления сломался сайт (1С-Битрикс: Управление сайтом 20.200.500, PHP 7.2.25):
— слетает авторизация (теряется сессия) и невозможно зайти в админку или на любую другую страницу. Сессия теряется с любым пользователем.
— если поставить галочку «запомнить» авторизацию, то в админку зайти можно. НО. Не работает ни одна кнопка «Сохранить», «Изменить» и т.п. Т.е. невозможно сделать никаких активных действий (сохранить настройки, сохранить элемент инфоблока).
Впервые такая фигня.
Что делать, кроме, как откатиться?
| Цитата |
|---|
| Сергей Иванов написал: Коллеги, приветствую! |
После обновления сломался сайт (1С-Битрикс: Управление сайтом 20.200.500, PHP 7.2.25):
— слетает авторизация (теряется сессия) и невозможно зайти в админку или на любую другую страницу. Сессия теряется с любым пользователем.
— если поставить галочку «запомнить» авторизацию, то в админку зайти можно. НО. Не работает ни одна кнопка «Сохранить», «Изменить» и т.п. Т.е. невозможно сделать никаких активных действий (сохранить настройки, сохранить элемент инфоблока).
Впервые такая фигня.
Что делать, кроме, как откатиться?
У нас тоже с сессиями глюки, не такие частые, но проскакивают.
| Цитата |
|---|
| max k написал: Сергей Иванов , я бы начал с просмотра лога |
| Цитата |
|---|
| max k написал: Сергей Иванов , я бы начал с просмотра лога |
Сориентируй, пожалуйста, если знаешь, что за логи (PHP, Битрикса) и где их искать?
лог в битриксе по умолчанию /logs
настраивается путь и уровень детализации и т.п. тут /bitrix/.settings.php
также есть смысл посмотреть лог в браузере F12 (для хром, фф)
лог это для начала, вероятно, туда ошибки сыплются.
а так, если лицензия активна, есть смысл обратиться в ТП, не факт что помогут, но где лог лежит, они точно знают)
| Цитата |
|---|
| Сергей Иванов написал: |
| Цитата |
|---|
| max k написал: Сергей Иванов , я бы начал с просмотра лога |
Сориентируй, пожалуйста, если знаешь, что за логи (PHP, Битрикса) и где их искать?
лог в битриксе по умолчанию /logs
настраивается путь и уровень детализации и т.п. тут /bitrix/.settings.php
также есть смысл посмотреть лог в браузере F12 (для хром, фф)
лог это для начала, вероятно, туда ошибки сыплются.
а так, если лицензия активна, есть смысл обратиться в ТП, не факт что помогут, но где лог лежит, они точно знают)
| Цитата |
|---|
| Виталий Шестаков написал: Зайдите в используемую бд и выполните: |
| Цитата |
|---|
| Сергей Иванов написал: Коллеги, приветствую! |
После обновления сломался сайт (1С-Битрикс: Управление сайтом 20.200.500, PHP 7.2.25):
— слетает авторизация (теряется сессия) и невозможно зайти в админку или на любую другую страницу. Сессия теряется с любым пользователем.
— если поставить галочку «запомнить» авторизацию, то в админку зайти можно. НО. Не работает ни одна кнопка «Сохранить», «Изменить» и т.п. Т.е. невозможно сделать никаких активных действий (сохранить настройки, сохранить элемент инфоблока).
Впервые такая фигня.
Что делать, кроме, как откатиться?
У нас тоже с сессиями глюки, не такие частые, но проскакивают.
Хотя: «Версия 20.200.350 Исправлена проблема, когда PHPSESSID мог изменяться у аутентифицированного пользователя.» Риторический вопрос: и где она исправлена?
Удалите все куки для всех сайтов с этим доменом (домен 2 уровня и все домены уровнями выше).
В общем, нужно удалить куки для всех сайтов, где встречается этот домен.
Поможет на некоторое время. По крайней мере, сможете обновиться.
А потом, если у вас односайтовая конфигурация, то нужно удалить имя домена в настройках сайта.
А если многосайтовая — то так задумано, оно и не будет работать.
Источник
После обновления битрикс не работает авторизация
Курс предназначен для базовой подготовки администраторов сайтов, созданных на «1С-Битрикс: Управление сайтом». Изучив курс, вы освоите основные методы администрирования системы, а также пополните знания по темам, изученным в курсе Контент-менеджер.
Если вы добросовестно изучите курс, то научитесь:
- управлять доступом к системе, сайтами, пользователями, группами пользователей;
- работать с инструментами системы;
- использовать возможности интерфейса по управлению системой;
- работать с модулями «1С-Битрикс: Управление сайтом», связанными с оптимизацией и безопасностью работы сайта;
- выполнять работу по конфигурированию веб-системы для оптимальной работы.
Если вам предстоит самостоятельная установка системы или перенос сайта на хостинг, то без курса Установка и настройка Курс Установка и настройка предназначен для специалистов устанавливающих «1С-Битрикс: Управление сайтом» или «Битрикс24 в коробке».
Начальные требования
Необходимый минимум знаний для изучения курса:
- базовые навыки компьютерной грамотности и навыков работы с ОС Windows;
- базовые знания о WWW и организации доступа к веб-серверу;
- знание системы в рамках курса Контент-менеджер Мы считаем, что вы этот курс уже прошли и знаете многое о Битриксе. Поэтому подсказок во всплывающих окнах будет намного меньше, чем в курсе Контент-менеджер. , чтобы банально не путаться в интерфейсе.
Неплохо было бы иметь базовые навыки установки и администрирования *nix-систем.
У нас часто спрашивают, сколько нужно заплатить
Курс полностью бесплатен. Изучение курса, прохождение итоговых тестов и получение сертификатов — ничего из этого оплачивать не нужно.
Ещё у нас есть Академия 1С-Битрикс, где можно обучиться на платной основе на курсах нашей компании либо наших партнёров.
Баллы опыта
В конце каждого урока есть кнопка . При клике на неё в Вашу итоговую таблицу опыта добавляется то количество баллов, которое указано в прочитанном После нажатия кнопки Прочитано! появится
окно подтверждения:
Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, поэтому итоговое количество набранных Вами баллов может отличаться от максимально возможного. Не переживайте! Отличный результат — это если общее число набранных Вами баллов отличается от максимального на 1-2%.
Тесты и сертификат
После изучения курса пройдите тесты на сертификацию. При успешной сдаче последовательности тестов на странице Моё обучение вы увидите результат обучения и там же — ваш сертификат в формате PDF.
Иконка успешно сданного вами курса отображается в вашем профиле на Freelance, если вы укажите ссылку на ваш профиль на сайте компании 1С-Битрикс.
Комментарии к урокам
| На каждой странице курса авторизованный на сайте посетитель может дать комментарий к содержимому страницы. Комментарий — не форум, там не ведётся обсуждений или разъяснений. Это инструмент для сообщений нам об ошибках, неточностях. Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой: |
Для преподавания оффлайн
Если данный курс берётся в качестве основы для оффлайного преподавания, то рекомендуемая продолжительность: 3 дня (24 академических часа).
Если нет интернета
Android:
EPUB Reader
CoolReader
FBReader
Moon+ Reader
eBoox
iPhone:
FBReader
CoolReader
iBook
Bookmate
Windows:
Calibre
FBReader
Icecream Ebook Reader
Плагины для браузеров:
EpuBReader – для Firefox
Readium – для Google Chrome
iOS
Marvin for iOS
ShortBook
обновляются периодически, поэтому возможно некоторое отставание их от онлайновой версии курса. Версия файла — от 01.10.2021.
Как проходить учебный курс?
Источник