En una aplicación web desarrollada con el framework Laravel (PHP) el ruteo (routing) no funcionaba, enviaba a una página inexistente. En este caso el problema era una configuración de Apache 2 donde estaba publicada dicha aplicación y no de la aplicación en si.
La solución fue la siguiente:
Se cambió la directiva AllowOverride del valor None a All dentro de la directiva Directory que contiene la trayecto de directorios donde se encuentra publicada la aplicación, dentro del archivo de configuración de Apache 2 (httpd.conf). En nuestro caso la aplicación se encontraba dentro del directorio raíz.
<Directory "/opt/www/apache2/htdocs">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All <--- CAMBIAR VALOR None POR All
....
No olviden reiniciar el servicio de Apache 2 para que refleje los cambios.
Espero y les sirva.
¡Hasta la próxima!