
Seguí teniendo problemas con un sistema de gestión de documentos que estoy intentando instalar ya que, en el primer paso del proceso de instalación, aparecía un error con:
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
Miré en /tmp y vi que los archivos sess_* tienen los siguientes permisos
---------- 1 vanced vanced 1240 Jan 20 08:48 sess_d39cac7f80834b2ee069d0c867ac169c
Todos los archivos de sesión se ven así. Obviamente, PHP no los puede utilizar y eso me está causando muchos problemas.
¿Cómo puedo hacer que PHP establezca los permisos correctos? Intenté cambiar el directorio que usa php.ini a /tmp/phpsessions y ocurre lo mismo. Los directorios son a+rwx
.
Respuesta1
La /tmp
carpeta es un marcador de posición predeterminado para los archivos de sesión. Utilice mejor su propia carpeta de sesión personalizada
Si su anfitrión ha permitido .htaccess
anular el permiso, puede colocar la siguiente directiva en su .htaccess
carpeta public_html
o httpdocs
carpeta
php_value session.save_path '/yourpath/sessionfolder'
Si NO está ejecutando php
en suphp
modo, asegúrese de que otras personas puedan escribir en la carpeta ( 777
).
Respuesta2
¿Existe una umask
configuración especial para esta cuenta? Parece que en alguna parte alguien puede haberlo configurado incorrectamente. Debería devolver algo como:
% umask
0022
Respuesta3
Para encontrar la umask de un proceso en ejecución:
https://stackoverflow.com/questions/165212/linux-getting-umask-of-an-already-running-process
Respuesta4
Intenta cambiar elmáscaraen la aplicación real.
Busque el archivo index.php o bootstrap y agregue en la parte superior:
umask(0022);