Foros del Web » Programando para Internet » PHP » Symfony »

No detecta rutas

Estas en el tema de No detecta rutas en el foro de Symfony en Foros del Web. Hola a tod@s. Tengo un problema con las rutas, les platico cómo estoy haciendolo y me dicen si falta algo o cualquier idea que me ...
  #1 (permalink)  
Antiguo 13/07/2016, 14:38
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 4 meses
Puntos: 46
No detecta rutas

Hola a tod@s.

Tengo un problema con las rutas, les platico cómo estoy haciendolo y me dicen si falta algo o cualquier idea que me puedan aportar para resolverlo.

1) subí un nuevo bundle a la carpeta src del framewrok.
|--/src/QcGameBundle/
|--|--Resources/
|--|--|--config/
|--|--|--|--routing.yml (el cual tiene este contenido:
Código yml:
Ver original
  1. qc_game_history:
  2.     path:     /history
  3.     defaults: { _controller: QcGameBundle:Default:history }
  4.  
  5. qc_game_partidas:
  6.     path:     /status
  7.     defaults: { _controller: QcGameBundle:Default:status }
  8.  
  9. qc_game_partidas:
  10.     path:     /play
  11.     defaults: { _controller: QcGameBundle:Default:play }
  12.  
  13. qc_game_start:
  14.     path:   /start
  15.     defaults: { _controller: QcGameBundle:Default:start }
  16.  
  17. qc_game_end:
  18.     path:   /verify
  19.     defaults: { _controller: QcGameBundle:Default:verify }
  20.  
  21. qc_game_won:
  22.     path:   /won
  23.     defaults: { _controller: QcGameBundle:Default:won }

2) A nivel de src en la carpeta app tengo lo siguiente:
|--/app/
|--|--config/
|--|--|routing.yml (el cual tiene este contenido:
Código yml:
Ver original
  1. qc_game: #Este bloque es el que agregé
  2.     resource: "@QcGameBundle/Resources/config/routing.yml"
  3.     prefix:   /game
  4.  
  5. qc_registration:
  6.     resource: "@QcRegistrationBundle/Controller/"
  7.     type:     annotation
  8.     prefix:   /registration
  9.  
  10. qc_main:
  11.     resource: "@QcMainBundle/Controller/"
  12.     type:     annotation
  13.     prefix:   /
  14.  
  15. qc_main_logout:
  16.     path:     /logout

3) En el archivo AppKernel.php agregé la carga del bundle.
Código PHP:
Ver original
  1. $bundles = [
  2.             new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
  3.             new Symfony\Bundle\SecurityBundle\SecurityBundle(),
  4.             new Symfony\Bundle\TwigBundle\TwigBundle(),
  5.             new Symfony\Bundle\MonologBundle\MonologBundle(),
  6.             new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
  7.             new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
  8.             new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
  9.             new Symfony\Bundle\AsseticBundle\AsseticBundle(),
  10.             new QcMainBundle\QcMainBundle(),
  11.             new QcRegistrationBundle\QcRegistrationBundle(),
  12.             new QcGameBundle\QcGameBundle(),
  13.             new Knp\Bundle\PaginatorBundle\KnpPaginatorBundle(),
  14.         ];

Pero cuando intento acceder a esa ruta me manda un 404.
Mis dudas concretas son:
1) ¿Hay algo que estoy pasando por algo?
2) ¿Hay algún log en donde pueda ver información más detallada sobre qué es lo que está ocurriendo?

Nota: ya revise el log que está en var/log y lo único que encuentro es:
Cita:
[2016-07-13 16:28:12] request.ERROR: Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\NotFoundHtt pException: "No route found for "GET /game/history"" at /PATH_AL_CODIGO/var/cache/prod/classes.php line 2377 {"exception":"[object] (Symfony\\Component\\HttpKernel\\Exception\\NotFou ndHttpException(code: 0): No route found for \"GET /game/history\" at /PATH_AL_CODIGO/var/cache/prod/classes.php:2377, Symfony\\Component\\Routing\\Exception\\ResourceNo tFoundException(code: 0): at /PATH_AL_CODIGO/var/cache/prod/appProdUrlMatcher.php:244)"} []

Gracias por tomarse el tiempo.

Saludos.
  #2 (permalink)  
Antiguo 13/07/2016, 17:04
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Busqueda Respuesta: No detecta rutas

Hola lair,

probaste a borrar la cache?

Usando...

Código:
$ php app/console cache:clear
Has probado a usar el controlador de desarrollo en lugar de el de producción?

Es decir, usar...

app_dev.php

en lugar de...

app.php

Saludos.
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #3 (permalink)  
Antiguo 13/07/2016, 18:41
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 4 meses
Puntos: 46
Respuesta: No detecta rutas

Cracias Synkronice

ya lo ejecuté el comando que me pasaste pero me marca esto:

Cita:
$ sudo php bin/console cache:clear --no-debug

// Clearing the cache for the dev environment with debug false


[OK] Cache for the "dev" environment (debug=false) was successfully cleared.

¿No está limpiando únicamente el cache de desarrollo?
¿Cómo puedo hacer para limpiar cache de producción?
o ejecuar desarrollo porque cuando apunto a app_dev.php

nada funciona, todas las secciones me marcan 404.

gracias nuevamente.
  #4 (permalink)  
Antiguo 14/07/2016, 04:33
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Pregunta Respuesta: No detecta rutas

Hola lair,

cuando borras la cache te borra todas las caches incluida la de produccion, pero si quieres borrar solo la de produccion prueba a ejecutar el siguiente comando:

Código:
$ php app/console cache:clear --env=prod
En cuanto a que no te funcione el entorno de desarrollo eso es preocupante...

Estas trabajando directamente en el servidor de produccion?

Existe el fichero app_dev.php en la carpeta web?

El proyecto lo iniciaste tu, o lo has heredado de otro programador?

Saludos.
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #5 (permalink)  
Antiguo 14/07/2016, 07:28
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 4 meses
Puntos: 46
Respuesta: No detecta rutas

Synkronice muchas gracias nuevamente por la respuesta.

Con respecto a lo que preguntas:

Estas trabajando directamente en el servidor de produccion? es un servidor de testing (producción actualmente está activo)

Existe el fichero app_dev.php en la carpeta web? Sí, sí existe

El proyecto lo iniciaste tu, o lo has heredado de otro programador? Me lo asignaron así como está y lo que he hecho es agregar un nuevo bundle (el que intento cargar)

Por otro lado ya ejecuté el clear cache como indicas y me dice que todo se realiza correctamente; sin embargo el sitio continúa marcando 404

Cita:
$ sudo php bin/console cache:clear --env=prod --verbose --no-debug

// Clearing the cache for the prod environment with debug false

// Warming up cache...

// Removing old cache directory...

// Finished


[OK] Cache for the "prod" environment (debug=false) was successfully cleared.
Agradezco mucho tu tiempo, saludos.
  #6 (permalink)  
Antiguo 14/07/2016, 07:40
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: No detecta rutas

Lo unico que se me ocurre es que revises el .htaccess y el app_dev.php que tienes en la carpeta web y lo compares con una instalacion limpia de Symfony, a ver si el programador anterior ha cambiado algo de estos dos ficheros...
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #7 (permalink)  
Antiguo 14/07/2016, 08:01
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 4 meses
Puntos: 46
Respuesta: No detecta rutas

Nuevamente gracias Synkronice

Los archivos que comentas está igual que el paquete en blanco de symfony.
la única diferencia que tienen es en el app_dev.php y es porque yo comenté la restricción de que sólo se pueda usar desde la máquina local.

De verdad muchas gracias. voy a seguir investigando para ver si por lo menos encuentro algo endonde se esté registrando el detalle del error.

Cualquier cosa que encuentre lo voy a estar publicando (espero sea la solución)

Saludos.
  #8 (permalink)  
Antiguo 14/07/2016, 08:28
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: No detecta rutas

Hola lair,

ejecuta el siguiente comando para ver las rutas que estan cargadas y reconoce Symfony en tu proyecto.

Código:
$ php app/console debug:router
Saludos.
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #9 (permalink)  
Antiguo 14/07/2016, 09:29
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 4 meses
Puntos: 46
Respuesta: No detecta rutas

Gracias otra vez Synkronice

Veo que sí muestra las ruta que busco.
Pero ahora estoy más perdido.

qc_game_history ANY ANY ANY /game/history
qc_game_partidas ANY ANY ANY /game/status
qc_game_start ANY ANY ANY /game/start
qc_game_end ANY ANY ANY /game/verify

Cita:
$ php bin/console debug:router
------------------------------- ---------- -------- ------ ----------------------------------------------------
Name Method Scheme Host Path
------------------------------- ---------- -------- ------ ----------------------------------------------------
_wdt ANY ANY ANY /_wdt/{token}
_profiler_home ANY ANY ANY /_profiler/
_profiler_search ANY ANY ANY /_profiler/search
_profiler_search_bar ANY ANY ANY /_profiler/search_bar
_profiler_info ANY ANY ANY /_profiler/info/{about}
_profiler_phpinfo ANY ANY ANY /_profiler/phpinfo
_profiler_search_results ANY ANY ANY /_profiler/{token}/search/results
_profiler ANY ANY ANY /_profiler/{token}
_profiler_router ANY ANY ANY /_profiler/{token}/router
_profiler_exception ANY ANY ANY /_profiler/{token}/exception
_profiler_exception_css ANY ANY ANY /_profiler/{token}/exception.css
_twig_error_test ANY ANY ANY /_error/{code}.{_format}
qc_game_history ANY ANY ANY /game/history
qc_game_partidas ANY ANY ANY /game/status
qc_game_start ANY ANY ANY /game/start
qc_game_end ANY ANY ANY /game/verify
user_registration GET|POST ANY ANY /registration/
province_cities ANY ANY ANY /registration/cities/{provinceId}
province_cities_home ANY ANY ANY /registration/cities/
subbrands ANY ANY ANY /registration/subbrands/{brandId}
subbrands_home ANY ANY ANY /registration/subbrands/
registration_sent ANY ANY ANY /registration/sent
registration_forgot_password GET|POST ANY ANY /registration/forgot-password
registration_forgot_sent ANY ANY ANY /registration/forgot-password/sent
registration_reset_password GET|POST ANY ANY /registration/reset-password/resetcode={resetCode}
registration_changed_password ANY ANY ANY /registration/changed-password
registration_terms_conditions ANY ANY ANY /registration/terms-conditions
registration_optout GET|POST ANY ANY /registration/optout
registration_optout_done ANY ANY ANY /registration/optout-done
render_image ANY ANY ANY /render
login ANY ANY ANY /login
login_check ANY ANY ANY /login_check
main_home GET|POST ANY ANY /
promo_info ANY ANY ANY /promo-info
products ANY ANY ANY /products
tradeoff_places ANY ANY ANY /tradeoff-places
code_history ANY ANY ANY /code-history
main_map ANY ANY ANY /main-map
registration_domino ANY ANY ANY /registration-domino
terms_home ANY ANY ANY /terms
contact_home ANY ANY ANY /contact
update_profile GET|POST ANY ANY /update-profile
update_profile_sent ANY ANY ANY /sent
qc_main_logout ANY ANY ANY /logout
------------------------------- ---------- -------- ------ ----------------------------------------------------
  #10 (permalink)  
Antiguo 14/07/2016, 09:51
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: No detecta rutas

Hola lair,

lo unico que veo extraño es la URL de tu primer mensaje...

http://host.com/subcarpeta/web/app.php/game/history

prueba a quitar la carpeta /web es decir...

http://host.com/subcarpeta/app_dev.php/game/history

o

http://host.com/subcarpeta/app.php/game/history

Por cierto, has revisado la configuracion de Apache, quiero decir el virtualHost, ya que para que Symfony funcione correctamente se suele crear un virtualHost en Apache para apuntar el DocumentRoot a la carpeta web...

Mas info aqui...

http://symfony.com/doc/current/cookb...iguration.html

Saludos.
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #11 (permalink)  
Antiguo 14/07/2016, 10:45
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 4 meses
Puntos: 46
Respuesta: No detecta rutas

Hola Synkronice.

Entiendo lo que dices, pero en el nginx están definidas estas rutas:

Código nginx:
Ver original
  1. location @rewriteapp {
  2.                 rewrite ^(.*)$ /subcarpeta/web/app.php?$query_string;
  3.         }
  4.  
  5.         location /subcarpeta/web {
  6.                 alias /usr/share/nginx/html/subcarpeta/web;
  7.                 index app.php;
  8.                 try_files $uri $uri/ @rewriteapp;
  9.  
  10.         }
  11.  
  12.         location ~ ^/app\.php(/|$) {
  13.                 fastcgi_pass unix:/var/run/php5-fpm.sock;
  14.  
  15.                 fastcgi_split_path_info ^(.+?\.php)(/.*)$;
  16.                 include fastcgi_params;
  17.  
  18.                 fastcgi_param  SCRIPT_FILENAME  $realpath_root$fastcgi_script_name;
  19.  
  20.                 fastcgi_param DOCUMENT_ROOT $realpath_root;
  21.  
  22.          }
Y todo eso ya venía con el desarrollo que nos entregaron.
Por eso es que se accede apuntando a la carpeta "web" desde el navegador.

Gracias por tomarte el tiempo par aayudarme.

Saludos.
  #12 (permalink)  
Antiguo 14/07/2016, 10:56
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 16 años, 6 meses
Puntos: 48
Respuesta: No detecta rutas

Hola lair,

nunca he usado ese servidor web, pero encontre en la pagina oficial de Symfony un apartado donde hablan de la configuracion recomendada por ellos para que funcione Symfony correctamente.

Creo que deberias echarle un vistazo y compararlo, creo que ahi va a estar el origen del problema...

http://symfony.com/doc/current/cookb...ion.html#nginx

Saludos
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #13 (permalink)  
Antiguo 27/07/2016, 07:01
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 4 meses
Puntos: 46
Respuesta: No detecta rutas

Hola Synkronice.

Gracias por todo tu apoyo, nadamas para comentarte.

Nunca pude resolver este problema, lo que hice para poder avanzar con el desarrollo fue tomar otro de los controladores y sobre éste definí las rutas tal como las tenia en el que yo había generado y una vez teniendo esas entradas desarrollé la lógica necesaria.


Nuevamente muchas gracias por tus aportes y especialmente por tu tiempo.

Saludos.

Etiquetas: detecta, rutas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:15.