Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Warning: SessionHandler::read()

31 de diciembre de 2015

Hola que tal ? Les comento que de repente empecé a tener éste error:

Warning: SessionHandler::read(): open(/var/lib/php/5.6/session/sess_jd1fcle4hd5mn2p70nv3sigan6, O_RDWR) 
failed: Permission denied (13)
 
CRITICAL - Uncaught PHP Exception Symfony\Component\Debug\Exception\ContextErrorException: "Warning: SessionHandler::read(): open(/var/lib/php/5.6/session/sess_0a3flb5dc1t8mkikham19ojbj0, O_RDWR) failed: Permission denied (13)" at /var/www/html/laprida/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/Session/Storage/Proxy/SessionHandlerProxy.php line 69

La verdad no se a que se debe, he googleado bastante y aún así no logro solucionarlo! :S

Estoy trabajando con un servidor en linux

Acá mi archivo de log: Error_log

[Thu Dec 31 21:36:28.237881 2015] [mpm_prefork:notice] [pid 4008] AH00169: caught SIGTERM, shutting down
[Thu Dec 31 21:36:28.317817 2015] [suexec:notice] [pid 4082] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Thu Dec 31 21:36:28.337265 2015] [auth_digest:notice] [pid 4083] AH01757: generating secret for digest authentication ...
[Thu Dec 31 21:36:28.337804 2015] [lbmethod_heartbeat:notice] [pid 4083] AH02282: No slotmem from mod_heartmonitor
[Thu Dec 31 21:36:28.354993 2015] [mpm_prefork:notice] [pid 4083] AH00163: Apache/2.4.16 (Amazon) PHP/5.6.14 configured -- resuming normal operations
[Thu Dec 31 21:36:28.355009 2015] [core:notice] [pid 4083] AH00094: Command line: '/usr/sbin/httpd'

proyecto_access_log:

xxx.xxx.xxx.xxx - - [31/Dec/2015:21:36:33 +0000] "GET /app_dev.php/sesion/usuario/login HTTP/1.1" 500 89551
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:36:34 +0000] "GET /bundles/framework/css/exception.css HTTP/1.1" 200 2425
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:36:34 +0000] "GET /bundles/framework/css/structure.css HTTP/1.1" 200 1200
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:36:34 +0000] "GET /bundles/framework/css/body.css HTTP/1.1" 200 6684
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:36:35 +0000] "GET /favicon.ico HTTP/1.1" 200 6518
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:36:35 +0000] "GET /app_dev.php/_wdt/757f5d HTTP/1.1" 500 73482
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:38:40 +0000] "GET /sesion/usuario/login HTTP/1.1" 200 5537
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:38:44 +0000] "POST /login_check HTTP/1.1" 302 304
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:38:45 +0000] "GET /Administracion HTTP/1.1" 302 532
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:38:45 +0000] "GET /sesion/usuario/login HTTP/1.1" 200 5537
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:38:50 +0000] "POST /login_check HTTP/1.1" 302 532
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:38:51 +0000] "GET /sesion/usuario/login HTTP/1.1" 200 5537
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:38:56 +0000] "POST /login_check HTTP/1.1" 302 532
xxx.xxx.xxx.xxx - - [31/Dec/2015:21:38:57 +0000] "GET /sesion/usuario/login HTTP/1.1" 200 5537

Alguna idea de como puedo solucionar ésto ? :( Desde ya gracias por su ayuda!

Configuraciones que realice: en el archivo de config. de apache: usuario: apache group: www

y ejecute éstos comandos: find /var/www -type d -exec sudo chmod 2775 {} + find /var/www -type f -exec sudo chmod 0664 {} +

En mi archivo composer tengo configurado las siguientes dependencias:

"require": {
        "php": ">=5.4.0",
        "symfony/symfony": "2.7.*",
        "doctrine/orm": "^2.4.8",
        "doctrine/doctrine-bundle": "~1.4",
        "twig/extensions": "1.0.*",
        "symfony/assetic-bundle": "~2.3",
        "symfony/swiftmailer-bundle": "~2.3",
        "symfony/monolog-bundle": "~2.4",
        "sensio/distribution-bundle": "~4.0",
        "sensio/framework-extra-bundle": "^3.0.2",
        "incenteev/composer-parameter-handler": "~2.0",
        "liuggio/excelbundle": "2.0"
    },

Respuestas

#1

Después de tanto renegar todo éstos días, por fin pude dar con la solución! :D

la solución la encontré acá

y basicamente fue:

// cambia el owner a la carpeta session
$ chown apache /var/lib/php/5.6/session
 
// cambia permisos para que solo el owner pueda leer, escribir y ejecutar
$ chmod 700 /var/lib/php/5.6/session

¿Por qué me paso esto? Por lo siguiente:

Resulta que cuando termine de levantar mi servidor y de configurar LAMP en el mismo, siguiendo unos instructivos de instalación de Amazon AWS, había creado un grupo llamado: www, al cual le había dado permisos para que pueda leer y escribir en las carpetas cache y log del proyecto de Symfony, e incorrectamente lo que hice fue entrar en el archivo de configuración de apache: httpd.conf y cambiar el grupo del servidor Apache, que era apache justamente, por el grupo www, para que tanto el usuario root (usuario que ejecuta la consola de symfony) como el usuario apache (usuario del servidor apache), pudieran trabajar con el proyecto.

Lo nunca había pensado era que el grupo apache dentro del archivo httpd.conf existía por una razón y esa es la de dar permisos (lectura, escritura y ejecución) a todas las carpetas y archivos a los que necesite acceder para poder hacer funcionar correctamente el servidor.

Pienso que el problema también se pudo haber solucionado si directamete le daba permisos al grupo apache dentro de mi proyecto en Symfony.

Espero que ésta solución sea de utilidad para alguien más! :)

@MrXXX0323

5 enero 2016, 21:40
#2

¡Muchas gracias por aportar una explicación tan detallada de la solución! Seguro que le viene bien a otras personas que tengan el mismo problema.

@javiereguiluz

5 enero 2016, 23:17