Проблема с сессиями
June 06, 2010 07:37AM
Всем привет.
Столкнулся со странной проблемой с сессиями. Кука устанавливается и прутствует но сессия не работает

[code]
<?php
session_start();

if (!isset($_SESSION['zzz'])) $_SESSION['zzz']=1;

$_SESSION['zzz']++;
print_r($_COOKIE);
print_r($_SESSION);
?>
[/code]

При каждой загрузке страницы, результат один и тот же. При первой загрузке идентификатора сесии нету, потом он устанавливается и больше не изменяется (как и при нормальной работе сессии) но значнеия не записываются.
[code]
Array ( [PHPSESSID] => acec7b4cea15fe7c317885589f9c6c2c ) Array ( [zzz] => 2 )
[/code]

Думал что проблема с папкой где хранятся сессии. Но на /etc/php/session стоят права 777.
Настройки php.ini
[code]
session.save_handler = files
session.save_path = "/etc/php/session"
session.use_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.cookie_httponly =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 100
session.gc_maxlifetime = 1440
session.bug_compat_42 = 1
session.bug_compat_warn = 1
session.referer_check =
session.entropy_length = 0
session.entropy_file =
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 0
session.hash_bits_per_character = 4
[/code]


Настройки из nginx.conf
[code]
server {
limit_req zone=server burst=50 nodelay;

listen 80;
server_name sitename;

access_log /var/log/nginx/sitename/access.log main;
error_log /var/log/nginx/sitename/error.log error;

location / {
auth_basic "Restricted";
auth_basic_user_file /var/www/sitename/.htpasswd;
set $chroot /var/www/sitename;
set $doc_root /;
root $chroot$doc_root;

set $sf '';
set $isfcgi 0;

if ($uri ~ ^\/.*\.php$) {
set $sf $uri;
set $isfcgi 1;
}

if (!-e $request_filename) {
set $sf /index.php;
set $isfcgi 1;
}

if ($uri ~ ^(.*)\/$) {
set $sf $1/index.php;
set $isfcgi 1;
}

if (!-e $chroot$doc_root$sf) {
set $sf /index.php;
set $isfcgi 1;
}

fastcgi_param SCRIPT_FILENAME $doc_root$sf;
fastcgi_param SCRIPT_NAME $sf;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_HOST $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param REMOTE_USER $remote_user;
fastcgi_param SERVER_NAME $server_name;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param SCHEME $scheme;
fastcgi_param DOCUMENT_ROOT $doc_root;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param REDIRECT_STATUS 200;
fastcgi_param HTTP_REFERER $http_referer;

if ($isfcgi) {
fastcgi_pass unix:/tmp/sitename.socket;
}
}

[/code]
Сергей Волков
Re: Проблема с сессиями
June 06, 2010 02:00PM
6 июня 2010 г. 15:37 пользователь olysyuk <nginx-forum@nginx.us> написал:

> Всем привет.
> Столкнулся со странной проблемой с сессиями. Кука устанавливается и
> прутствует но сессия не работает
>
session.save_handler = files
> session.save_path = "/etc/php/session"
>

ls -lad /etc/php/session

проверьте имеет-ли пул обслуживающий ПХП на этом сайте доступ на запись в
/etc/php/session
Re: Проблема с сессиями
June 06, 2010 02:34PM
проблема была в chroot -e . Скрипт не имел доступа к папке сессии.
Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 177
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready