Ошибка ваша сессия истекла пожалуйста пересохраните документ еще раз

Привет всем.
Ситуация следующая:
Установил битрикс, обновил все норм, версия php 7.4 сайт один, файл .access.php присутствует.
Работает 2 часа и потом сессия отваливается:
При сохранении элементов или страниц выдает:
Ваша сессия истекла. Пожалуйста, пересохраните документ еще раз.

В админке при проверки системы зависает на: Наличие необходимых модулей php и 0%
При проверке доступа выдает: Permission denied: BITRIX SESSID ERROR

Настройки пытаюсь сохранить, обновляет страницу но не меняет ничего.

В обновлениях пробовал установить язык там 5 языков для обновления весят, пишет Доступ запрещен.
При установке лицензионного ключа пишет в аллерте: Ошибка сохранения ключа: ERRДоступ запрещен.

В итоге переустанавливаю, работает нормально, через час-два опять эта шляпа!
Хостинг Джино, ТП пишет вот что:

Мы понимаем, что проблема может быть с сервером, но мы не поддержка данной cms, не можем знать, что может скрываться за причинами этой ошибки. Вам поддержка cms должна уточнить, что может быть причиной проблемы.

Отправить запрос в Laravel — Ошибка — 419 Извините, ваша сессия / 419 ваша страница истекла

419 К сожалению, срок вашего сеанса истек. Обновите страницу и попробуйте еще раз.

В версии 5.6 такой проблемы не было.

Перед чтением ниже убедитесь, что у вас есть @csrf или > в вашей форме нравится

Сообщение об ошибке Session Expired или 419 Page Expired в larvel появляется из-за того, что где-то не удается проверить ваш токен csrf, что означает, что AppHttpMiddlewareVerifyCsrfToken::class промежуточное ПО уже включено. В форме @csrf уже добавлена ​​директива blade, что тоже должно быть хорошо.

Затем другая область для проверки — это сеанс. csrf Маркер проверка непосредственно связана с вашей сессией, поэтому вы можете проверить , является ли драйвер сеанса работой или нет, например, неправильно настроенного Redis может вызвать проблемы.

Возможно, вы можете попробовать переключить драйвер / программное обеспечение сеанса из .env файла, поддерживаемые драйверы приведены ниже.

Поддерживаемые драйверы сеансов в Laravel 5, Laravel 6 и Laravel 7 (Doc Link)

  • file — сеансы хранятся в хранилище / framework / sessions.
  • cookie — сеансы хранятся в безопасных зашифрованных файлах cookie.
  • database — сеансы хранятся в реляционной базе данных.
  • memcached / redis — сеансы хранятся в одном из этих быстрых хранилищ на основе кеша.
  • array — сеансы хранятся в массиве PHP и не сохраняются.

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

Возможные сценарии, подверженные ошибкам

Вероятно, сеансы на основе файлов могут не работать из-за проблем с правами доступа к /storage каталогу (быстрый поиск в Google даст вам решение), также помните, что установка 777 для каталога никогда не является решением.

В случае с драйвером базы данных ваше соединение с БД может быть неправильным, или sessions таблица может не существовать или неправильно настроена (неправильная часть конфигурации была подтверждена как проблема в соответствии с комментарием @Junaid Qadir).

redis/memcached конфигурация неверна или одновременно обрабатывается другим фрагментом кода в системе.

Было бы неплохо выполнить php artisan key:generate и сгенерировать новый ключ приложения, который, в свою очередь, сбрасывает данные сеанса.

Очистить кеш браузера СЛОЖНО , я обнаружил, что хром и firefox виноваты больше, чем я могу вспомнить.

Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

  • Темы: Активные | Без ответов

Страницы 1

#1 09.07.2019 16:07:58

Ошибка 419 при любых настройках сессии и формы

Всем привет.
Проблема такая
У меня при отправке формы ошибка 419 page expired.
Перелопатив всё, что нашел в гугле, я пробовал делать следующее:

Проставлять права на запись в папке storage (файлы создаются при каждом обновлении страницы новые)

Переключился на хранение в БД (новые строки создаются)

Прописывал в форме так: @csrf

чистил кэши, пересобирал проект после удаления папки «vendor»

Ничего из этого не помогло. Единственным выходом было отрубить эту проверку csrf токена.
Сайт вертится на open server. Laravel 5.8 самая свежая.
Повторюсь, что всё работает, если вырубить проверку токена. МОжет надо что-то с сервером делать?
Код роута:

Что ЭТОГО 419 страница истекла laravel ОШИБКА

Если вы используете приложение, разработанное в laravel, вы можете получить сообщение об ошибке «Срок действия страницы 419 истек».

Что такое 419 Страница просрочена

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

Почему вы получаете 419 Page истек в Laravel?

Laravel Framework имеет функцию безопасности, которая помогает вам в защита вашего сайта от CSRF, Если вам интересно, почему вы получаете эту ошибку, прочитайте этот пример, и вы узнаете о базовом механизме защиты от CSRF в Laravel и о причине ошибки.

Допустим, вы зашли на страницу входа в приложение laravel в своем браузере, и вам позвонил друг. Вы были заняты разговором с другом и забыли о входе в приложение, и страница оставалась там довольно долго. Вы вернулись туда, где ушли, вы заполнили форму и Voilá, ошибка 419 страницы истекла, Если вы просматриваете страницу или просматриваете исходный код в браузере и просматриваете форму входа, это скрытое поле ввода с длинной строкой, например, токен CSRF, этот токен отвечает за защиту от CSRF [подробнее о csrf]. Когда вы покинули экран своего компьютера и были заняты разговором с другом, срок действия этого токена истек, и ваш запрос был отклонен с кодом состояния 419 HTTP.

Что может вызвать проблему истечения срока действия страницы 419

  • Вы не отправляете токен CSRF с формой и не используете промежуточное ПО verifyCSRF
  • Вы тратите слишком много времени на отправку запроса
  • вы взломали скрытое поле токена
  • Вы правильно настроили параметры сеанса в файле конфигурации сеанса

Как это исправить?

Самый простой способ исправить проблему — перезагрузить страницу. После перезагрузки вы получите новый токен, который означает, что вы готовы к работе.

Проверьте токен csrf в форме, которую вы отправляете. Наконец, убедитесь, что конфигурация для домена и файлов cookie выполнена правильно в файле конфигурации сеанса.

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

 

Уважаемые подскажите!
При переходе в админ. панеле из одного раздела вдругой, при редактировании файла, обновлении контента, при любых действиях запрашивает АВТОРИЗАЦИЮ. После авторизации все равно ничего не сохраняется и пишет «Ваша сессия истекла. Пожалуйста, пересохраните документ еще раз.» Что делать, куда бежать

 
 

Наверно глупый вопрос))) Протестировал и? Что этот тест дает, на что обратить внимание?

 

Вчера проблем с сессиями не наблюдал, сегодня зашел с другого компа и вот… началось

 

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

 

в проактивной защите есть «Защита сессий», там и отключается

С уважением,
Силаев Виталий

 

Пользователь 470129

Посетитель

Сообщений: 92
Баллов: 9
Регистрация: 22.01.2016

#7

0

04.04.2016 10:08:19

У меня такая проблема была т.к в настройках главного модуля (вроде там), отсутствовала строка адрес сайта. Прописав её, авторизация стала держаться.

Данная проблема возникает по разным причинам, приведу несколько известных вариантов решения проблемы. В основном касается настроек PHP сервера. 

  1. Увеличим время сессии до 3 часов. Если у вас php.ini
    session.gc_maxlifetime = 10800
    session.cookie_lifetime = 10800
    // не забыть перезагрузить сервер
  2. Увеличим время сессии до 3 часов. Если у вас .htaccess
    php_value session.gc_maxlifetime 10800
    php_value session.cookie_lifetime 10800
  3. Или попробовать добавить в dbconn.php
    session_set_cookie_params(10800);
  4. В настройках группы администраторов изменить увеличение времени жизни сессии на дефолтную.
  5. Бывает допущены ошибки в .htaccess. Например не до конца директиву отключили: правило закоментили, а вот условие осталось.

Достаточно часто после переноса сайта на CMS 1с-Битрикс / Bitrix с одного хостинга на другой или со старого сервера на новый администраторы сайта сталкиваются с проблемами:

  • При попытке авторизоваться в админ-панели снова перекидывает на форму авторизации
  • Добавление товаров в корзину не срабатывает
  • Заказы на сайте не оформляются
  • В оформлении заказа или других формах появляется ошибка «Ваша сессия истекла. Пожалуйста, перезагрузите страницу»

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

Как исправить данную проблему?

Данный способ сработает если у вас один сайт по многосайтовости и проблемы описанные выше не воспроизводятся в режиме инкогнито.

Внимание: для выполнения действий ниже необходимо обратиться к вашему разработчику, т.к. необходимы навыки работы с кодом и понимание вносимых изменений.

  1. Переходим в административную панель. Переходим в Настройки > Настройки продукта > Сайты > Список сайтов

    Проверяем что у вас один сайт по многосайтовости, открываем его

    Очищаем поле Доменное имя, сохраняем

  2. Открываем файл /bitrix/.settings.php — проверяем блок session

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

    'session' => array (
      'value' => 
      array (
        'mode' => 'default',
      ),
      'readonly' => true,
    ),
  3. В /bitrix/php_interface/dbconn.php

    Добавляем строку

    setcookie("PHPSESSID", "", 777, '/', '.site.ru');

    Где вместо site.ru указан адрес вашего сайта, например arturgolubev.ru. Обратите внимание, что перед адресом сайта стоит точка

  4. Проверяем авторизацию и прочие проблемы, после выполнения действий выше они должны исправиться

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

  • Ошибка ваша сессия истекла перезагрузите страницу битрикс
  • Ошибка варфейс please send us this error report
  • Ошибка ваша карта не поддерживает бесконтактную оплату
  • Ошибка варфейс failed creating the direct3d device
  • Ошибка ваш сеанс работы был завершен сетевой город