Php warning session start open

Не работает sesion_start()

Warning: session_start() [function.session-start]: open(/var/www/pryda-vlad1/data/bin-tmp/sess_7f53220c73bc45c38d1dfb1ae20d6e78, O_RDWR) failed: No such file or directory (2) in /var/www/pryda-vlad1/data/www/beauty-space.com.ua/cart.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter — headers already sent (output started at /var/www/pryda-vlad1/data/www/beauty-space.com.ua/cart.php:2) in /var/www/pryda-vlad1/data/www/beauty-space.com.ua/cart.php on line 2

Эту при попытке регистрации

Warning: session_start() [function.session-start]: open(/var/www/pryda-vlad1/data/bin-tmp/sess_7f53220c73bc45c38d1dfb1ae20d6e78, O_RDWR) failed: No such file or directory (2) in /var/www/pryda-vlad1/data/www/beauty-space.com.ua/reg/handler_reg.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter — headers already sent (output started at /var/www/pryda-vlad1/data/www/beauty-space.com.ua/reg/handler_reg.php:2) in /var/www/pryda-vlad1/data/www/beauty-space.com.ua/reg/handler_reg.php on line 2
true
Warning: Unknown: open(/var/www/pryda-vlad1/data/bin-tmp/sess_7f53220c73bc45c38d1dfb1ae20d6e78, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/www/pryda-vlad1/data/bin-tmp) in Unknown on line 0

Источник

Читайте также:  Php output all vars

Ошибки работы с PHP сессиями в Unix/Linux

Хочу описать статью с возможными ошибками работы PHP и сессиями в Unix/Linux. Думаю многие сталкиваются и будет полезно знать как решать ту, или иную ошибку.

Обновлял заббикс и после его обновления, перестал корректно работать, посмотрел лог и увидел:

2017/12/08 21:15:48 [error] 40014#40014: *395 FastCGI sent in stderr: "PHP message: PHP Warning: require_once(/etc/zabbix/web/maintenance.inc.php): failed to open stream: Permission denied in /usr/share/zabbix/include/classes/core/ZBase.php on line 269

Можно увидить следующую ошибку:

Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser.

Возникла у меня при установке phpmyadmin.

Так же, если имеется cPanel, может возникнуть такая же ошибка, я описывал решение в моей статье:

При работе с апачем, я получил:

Warning: session_start() [function.session-start]: open(/var/lib/php/session/sess_eqbchncji8kj22f0iqa9g3v7u2, O_RDWR) failed: Permission denied (13) in /var/www/vhosts/httpdocs/index.php on line 6 Warning: Unknown: open(/var/lib/php/session/sess_eqbchncji8kj22f0iqa9g3v7u2, O_RDWR) failed: Permission denied (13) in Unknown on line 0 Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0
FastCGI sent in stderr: “PHP message: PHP Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0” while reading upstream, client: 37.***.***.56, server: rtfm.co.ua, request: “POST /wp-admin/admin-ajax.php HTTP/1.1”, upstream: “fastcgi://127.0.0.1:9009”, host: “rtfm.co.ua”, referrer: “http://linux-notes.org/wp-admin/post.php?post=5496&action=edit&message=10”

Другие ошибки я буду добавлять по мере их возникновения.

Решения ошибок работы с PHP сессиями в Unix/Linux

Ну что, пришли к решению. Первое что необходимо сделать, — так проверить путь куда сохраняются сессии, для этого, выполните:

$ php -i |grep save_path session.save_path => /var/lib/php/session => /var/lib/php/session

Как видно у меня этот путь рассположен в /var/lib/php/session директории.

Проверим права на данную директорию:

Смотрим от какого юзера идет выполнение php кода:

PS: Или, можно зайти в ваш пул php-fpm и найти пользователя от которого он запущен!

Решение довольно примитивное. Для начала, стоит создать папку под использующие сессии (если ее нет еще) и выставить права:

# mkdir /var/lib/php/session # chmod 1777 /var/lib/php/session

И так же, выставляем владельца и группу:

# chown root:www /var/lib/php/session # chown -R www: /var/cache/nginx
# chmod o+rw /var/lib/php/session

Потом, открываем ваш php.ini и находим строку:

И нужно выполнить расскоменчивание данной строки.

PS: Возможно, нужно будет выставить права и владельца!

Если вы используете выделенные пулы под свои php- проекты, то стоит поискать данную строку в:

# grep -lR 'php_value' /etc/php-fpm.d

Если покажет файлы, то стоит посмотреть привести к:

[. ] php_value[session.save_handler] = files php_value[session.save_path] = /var/lib/php/session [. ]

Перезапускаем php-fpm службу:

Для апача, следуюет указать следующие строки:

php_value session.save_handler "files" php_value session.save_path "/var/lib/php/session"

а поиск файла можно сделать так:

И тоже, выполнить перезапуск службы:

Вот и все решение! А у меня на этом статья «Ошибки работы с PHP сессиями в Unix/Linux» завершена.

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Рубрики

  • Arch Linux (167)
  • Commands (36)
  • Debian’s (635)
    • Administration tools Ubuntu (37)
    • Backups Debian’s (7)
    • Database в Ubuntu (58)
    • Games (игры) (1)
    • Monitoring в Debian и Ubuntu (49)
    • Virtualization в Ubuntu / Debian/ Linux Mint (41)
      • Docker (22)
      • Kubernetes (6)
      • KVM (4)
      • OpenVZ (3)
      • Vagrant (5)
      • VirtualBox (6)
      • ArgoCD (1)
      • Concourse (1)
      • Gitlab (1)
      • Jenkinks (4)
      • Spinnaker (1)
      • Apache (32)
      • Cherokee (1)
      • FTP-services (5)
      • Lighttpd (1)
      • Nginx (26)
      • PHP (27)
      • Proxy для Debian’s (2)
      • Tomcat (4)
      • Панели управления в Ubuntu/Debian/Mint (24)
      • Установка и настройка почты на Ubuntu/Debian (12)
      • Хранилища (clouds) (2)
      • Administration tools freeBSD (19)
      • Database во FreeBSD (52)
      • Monitoring во freeBSD (37)
      • Virtualization во FreeBSD (22)
      • VoIP (1)
      • Установка Web сервисов (91)
      • Установка и настройка почты (6)
      • Установка из ports (пакетов) (19)
      • Установка из sorce code (исходников) (23)
      • Непрерывная интеграция (CI) (27)
      • Database в MacOS (36)
      • Monitoring в Mac OS (31)
      • Security (безопасность) (12)
      • Virtualization в Mac OS (30)
        • Docker (19)
        • Kubernetes (6)
        • Vagrant (5)
        • VirtualBox (5)
        • ArgoCD (1)
        • CircleCI (1)
        • Concourse (1)
        • Gitlab (1)
        • Jenkinks (4)
        • Spinnaker (1)
        • Administration tools CentOS (49)
        • Backups RPM’s (4)
        • Database в CentOS (68)
        • Monitoring в CentOS (67)
        • Virtualization в CentOS/ Red Hat/ Fedora (42)
          • Docker (23)
          • Kubernetes (6)
          • KVM (5)
          • OpenVZ (2)
          • Vagrant (5)
          • VirtualBox (6)
          • VMWare (3)
          • ArgoCD (1)
          • Concourse (1)
          • Gitlab (1)
          • Jenkinks (4)
          • Spinnaker (1)
          • Apache (35)
          • Cherokee (1)
          • DNS (3)
          • FTP (10)
          • Nginx (33)
          • PHP (34)
          • Proxy для RedHat’s (2)
          • Tomcat (2)
          • Voice (2)
          • Панели управления в CentOS/Red Hat/Fedora (27)
          • Прокси сервер на CentOS/RHEL/Fedora (4)
          • Установка и настройка почты на CentOS/RHEL/Fedora (14)
          • Хранилища (clouds) (1)

          соц сети

          Unix-Linux- в примерах

          Unix-Linux- в примерах

          Unix-Linux- в примерах

          Архив новостей

          Свежие записи

          Свежие комментарии

          • Глеб к записи Установка Adobe Flash Player в Debian/Ubuntu/Mint
          • Максим к записи Заблокировать User Agents используя Nginx
          • Денис к записи Как включить EPEL репозиторий на CentOS
          • Гость к записи Закомментировать/Раскомментировать строки vi/vim в Unix/Linux
          • Sergey к записи Установка и настройка OpenVPN сервера на Debian/Ubuntu/Linux Mint

          Источник

          Проблемы с сессиями PHP Warning: session_start()

          Привет всем. Подскажите по 2 ошибкам с сессиями. Искал на форуме и гуглил, пришел к выводу что не читаются или не записываются сессии на сервере. Я не знаю где они там хранятся перелопатил все файлы.

          Вот эти 2 ошибки возникшие вначале и при попытке что то устранить

          PHP Warning: session_start(): open(/tmp/php_sess/sess_ab22edd48a9a097c954ec7df119f2866, O_RDWR) failed: Permission denied (13) in /home/.

          PHP Warning: session_start(): open(tmp/sess_127f65545df268fc3777af66d9b81326, O_RDWR) failed: No such file or directory (2) in /home/.

          2 Reply by sempai 2017.05.08 05:14

          Re: Проблемы с сессиями PHP Warning: session_start()

          Путь к папке хранения сессий, у вас указан в ошибках. Проверьте наличае папки и выставьте нужные права (на запись).

          3 Reply by PunBB 2017.05.08 05:16

          Re: Проблемы с сессиями PHP Warning: session_start()

          Вот эти 2 ошибки возникшие вначале и при попытке что то устранить

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

          а что вы пытались предпринять для решения проблемы?

          4 Reply by between-two-fires 2017.05.08 05:47

          Re: Проблемы с сессиями PHP Warning: session_start()

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

          ini_set('session.save_path', realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/../tmp')); session_start();

          5 Reply by PunBB 2017.05.08 06:18

          Re: Проблемы с сессиями PHP Warning: session_start()

          ini_set(‘session.save_path’, realpath(dirname($_SERVER[‘DOCUMENT_ROOT’]) . ‘/../tmp’));
          session_start();

          between-two-fires, это добавлять нужно не в header.php, а в config.php.

          session_save_path($_SERVER['DOCUMENT_ROOT'] . '/tmp');

          6 Reply by between-two-fires 2017.05.08 09:52

          Re: Проблемы с сессиями PHP Warning: session_start()

          Спасибо ребята! Вроде ошибки прекратились

          Теперь все сессии в одной папке собираются. Посмотрим, что будет дальше

          7 Reply by PunBB 2017.05.08 10:00

          Re: Проблемы с сессиями PHP Warning: session_start()

          в директорию где хранятся сессии, желательно положить 2 файла:

          Пустой файл index.html для того чтобы невозможно было просматривать ее содержимое
          И файл .htaccess, за образец можно взять из папки кеша.

           Order Allow,Deny Deny from All 

          Posts: 7

          Currently view post: 1 guest, 0 registered users

          You must login or register to post a reply

          PunBB Forum → Bug reports → Проблемы с сессиями PHP Warning: session_start()

          Generated in 0.157 seconds (76% PHP — 24% DB) with 24 queries

          Источник

          How to Fix: Warning: session_start() [function.session-start]: open(/tmp/sess_…O_RDWR) failed.

          So, you’ve just installed or moved your PHP Melody installation to a new server and you’re greeted with this message:

          Warning: session_start() [function.session-start]: open(/tmp/sess_e0725de9954b..2c14904, O_RDWR) failed: Permission denied (13) in /home/melody/public_html/stuff.php on line 42

          This error basically indicates that the server’s PHP installation is not really configured that well. Note: We’re not referring to the PHP Melody installation, but the actual PHP runtime.

          As a result, the first thing you should do is report this error to your hosting provider. They should have a ‘live chat’ available for such things and you could solve this problem in a matter of minutes.

          If for some reason you don’t or can’t report the problem to someone who will address it, you may be able to solve this problem yourself.

          How to change the sessions folder

          Most hosting providers will allow you to either create your custom php.ini file or modify an existing php.ini file via your cPanel or Plesk account.

          See if your hosting provider allows you to update your “PHP Configuration” from your account management panel (cPanel, Plesk, etc.).

          Once you’ve found your PHP configuration file (php.ini), search for the following line:

          If you don’t have root access to the server in order to set the correct permissions to the /tmp folder, create a new folder which you can control and use it as the default folder for your PHP session files.

          For example, if your hosting’s account path is:

          /home/videos34/public_html/

          Create a new folder for your sessions (outside the public_html folder would be best) as such:

          /home/videos34/tmp/

          Next, change the permissions for your tmp folder to 0777 (fully writable).
          Now you can specify this new folder in your php.ini as such:

          session.save_path = '/home/videos34/tmp/'

          Источник

Оцените статью