3.5. Resolución de problemas
Si se producen errores durante la instalación, lo mejor es intentar mostrar los mensajes de error en el navegador o en la consola de comandos. Normalmente los errores muestran pistas sobre su posible causa y hasta pueden contener enlaces a algunos recursos disponibles en Internet sobre ese problema.
3.5.1. Problemas típicos
Si continuan los problemas con Symfony, puedes comprobar los siguientes errores comunes:
- Algunas instalaciones de PHP incluyen tanto PHP 4 como PHP 5. En este caso, suele ser habitual que el comando de PHP 5 sea
php5, por lo que se debe ejecutar la instrucciónphp5 symfonyen vez desymfony. Puede que también sea necesario añadir la directivaSetEnv PHP_VER 5en el archivo de configuración.htaccesse incluso puede que tengas que renombrar los scripts del directorioweb/para que tengan una extensión.php5en vez de la tradicional extensión.php. Cuando se intenta ejecutar Symfony con PHP 4, el error que se muestra es similar al siguiente:
Parse error, unexpected ',', expecting '(' in .../symfony.php on line 19.
- El límite de memoria utilizado por PHP se define en el archivo de configuración
php.iniy debería valer por lo menos32M(equivalente a 32 MB). El síntoma común de este problema es cuando se muestra un mensaje de error al instalar Symfony mediante PEAR o cuando se utiliza la línea de comandos:
Allowed memory size of 8388608 bytes exhausted
- La directiva
zend.ze1_compatibility_modedel archivo de configuración de PHP (php.ini) debe tener un valor igual aoff. Si no es así, cuando se intenta acceder a cualquier script, se muestra el siguiente mensaje de error:
Strict Standards: Implicit cloning object of class 'sfTimer'because of 'zend.ze1_compatibility_mode'
- Los directorios
log/ycache/del proyecto deben tener permiso de escritura para el servidor web. Si se ejecuta una aplicación sin estos permisos, se muestra la siguiente excepción:
sfCacheException [message] Unable to write cache file"/usr/miproyecto/cache/frontend/prod/config/config_config_handlers.yml.php"
La ruta del sistema debe incluir la ruta al comando
php, y la directivainclude_pathdel archivo de configuración de PHP (php.ini) debe contener una ruta a PEAR (en el caso de que se utilice PEAR).En ocasiones, existe más de un archivo
php.inien el sistema (por ejemplo cuando se instala PHP mediante el paquete WAMP). En estos casos, se puede realizar una llamada a la funciónphpinfo()de PHP para saber la ruta exacta del archivophp.inique está utilizando la aplicación.
Nota Aunque no es obligatorio, es muy recomendable por motivos de rendimiento establecer el valor off a las directivas magic_quotes_gpc y register_globals del archivo de configuración de PHP (php.ini).
3.5.2. Recursos relacionados con Symfony
Existen varias formas de encontrar soluciones a los problemas típicos y que ya les han ocurrido a otros usuarios:
- El foro de instalación de Symfony (http://www.symfony-project.org/forum/) contiene muchas preguntas sobre configuraciones en diferentes plataformas, entornos y servidores.
- La lista de correo de usuarios de Symfony (http://groups.google.es/group/symfony-es) permite buscar en sus archivos de mensajes, por lo que es posible que encuentres a otros usuarios que han pasado por los mismos problemas.
- El wiki de Symfony (http://trac.symfony-project.org/#Installingsymfony) contiene tutoriales detallados paso a paso sobre la instalación de Symfony que han sido creados por otros usuarios.
Si no encuentras la respuesta en esos recursos, puedes preguntar a la comunidad de Symfony. Las preguntas puedes hacerlas en el foro, en la lista de correo e incluso en el canal IRC de Symfony (#symfony) para obtener la respuesta de los miembros más activos de la comunidad.
Compartir
Indice de contenidos
- 1 Introducción a Symfony
- 2 Explorando el interior de Symfony
- Capítulo 3. Ejecutar aplicaciones Symfony
- 3.1. Instalando el entorno de pruebas
- 3.2. Instalando las librerías de Symfony
- 3.3. Crear una aplicación web
- 3.4. Configurar el servidor web
- 3.5. Resolución de problemas
- 3.6. Versionado del código fuente
- 3.7. Resumen
- 4 Introducción a la creación de páginas
- 5 Configurar Symfony
- 6 El Controlador
- 7 La Vista
- 8 El modelo
- 9 Enlaces y sistema de enrutamiento
- 10 Formularios
- 11 Integración con Ajax
- 12 Uso de la cache
- 13 Internacionalización y localización
- 14 Generador de la parte de administración
- 15 Pruebas unitarias y funcionales
- 16 Herramientas para la administración de aplicaciones
- 17 Personalizar Symfony
- 18 Rendimiento
- 19 Configuración avanzada