Tengo un comportamiento irregular usando el controlador Zend _redirect
método.Zend _redirect error: Prepends base url dos veces
Mi copia de la aplicación se obtiene a través de un enlace simbólico en mi DocumentRoot
. También mi router por defecto es personalizado para responder a este patrón:
http://localhost/<appSymLink>/<param_A>/<controller>/<action>/
desde un controlador, construyo una URL de este modo:
$url = $this->_helper->url('action', 'controller', $param_A = 'valueA');
Si puedo acceder a la url:
http://localhost/<appSymLink>/<param_A>/<controller>/<action>/
Esta variable contiene la siguiente cadena:
/<appSymLink>/<param_A>/<controller>/<action>/
Y cuando llamo
$this->_redirect($url);
El usuario es redirigido de forma explícita a este camino, con rutas redundantes de base.
/<appSymLink>/<appSymLink>/<param_A>/<controller>/<action>/
Zend parece estar anteponiendo la ruta de la base dos veces.
La copia de la aplicación de mi compañero de trabajo vive en su DocumentRoot
, y él no está experimentando este problema.
Definición de una ruta de la base vacía dentro de la acción, justo antes de la operación, funciona de esta manera:
$this->getRequest()->setBaseUrl('');
Esto no es una solución factible obviamente. Por otro lado, hacer esto dentro de un complemento de controlador en routeShutdown
elimina ambas instancias del directorio de la aplicación.
¿Alguien tiene consejo para una solución a este problema, o algún consejo para mirar más adentro?