arquivos de sessão PHP tem permissões de 000 - Eles são inutilizáveis

2

Continuei tendo problemas com um sistema de gerenciamento de documentos que estou tentando instalar, pois, na primeira etapa do processo de instalação, ocorreria um erro com:

Warning: Unknown: open(/tmp/sess_d39cac7f80834b2ee069d0c867ac169c, 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 (/tmp) in Unknown on line 0

Eu olhei em / tmp e vi os arquivos sess_ * com as seguintes permissões

---------- 1 vanced vanced 1240 Jan 20 08:48 sess_d39cac7f80834b2ee069d0c867ac169c

Todos os arquivos da sessão são assim. Então, obviamente, eles são inutilizáveis pelo PHP e estão causando muitos problemas.

Como posso obter o PHP para definir as permissões corretas? Eu tentei mudar o diretório que php.ini usa para / tmp / phpsessions e ocorre a mesma coisa. Os diretórios são a+rwx .

    
por John Gardeniers 20.01.2010 / 01:57

4 respostas

1

A pasta /tmp é um marcador de posição padrão para arquivos de sessão. Melhor usar sua própria pasta de sessão personalizada

Se o seu anfitrião tiver permitido a permissão .htaccess de substituições, pode colocar a seguinte diretiva na sua pasta .htaccess under public_html or httpdocs

php_value session.save_path '/yourpath/sessionfolder'

Se você NÃO estiver executando o php no modo suphp , verifique se a pasta pode ser gravada por outras pessoas ( 777 )

    
por 20.07.2010 / 11:29
0

Existe uma configuração especial de umask para esta conta? Parece que em algum lugar, alguém pode ter definido isso de forma inadequada. Deve retornar algo como:

% umask
0022
    
por 20.01.2010 / 02:05
0

Para encontrar o umask de um processo em execução:

link

    
por 21.02.2010 / 04:40
0

Tente alterar a umask no aplicativo real.

Encontre o arquivo index.php ou bootstrap e adicione no topo:

umask(0022);
    
por 20.07.2010 / 12:48