Pregunta

Tengo: nueva copia limpia de Kohana 2.3.4 (también probé 2.4 RC1), un controlador llamado 'índice' en un Debian con Apache 2.2.9.

Cuando escribo una dirección como http: // localhost / kohana / index / index espero controlador 'index', acción 'index' a ejecutar. Funciona en Windows localhost, funciona en hosting compartido. Pero no en mi servidor Debian.

He depurado y encontrado que $ _SERVER ['PATH_INFO'] no es correcto. Omite el primer 'índice' en el URI, por lo que puedo acceder a 'índice / índice' yendo a 'índice / índice / índice'. Eso es lo que quiero arreglar.

¿Alguien sabe cómo podría resolverse esto?

¿Fue útil?

Solución 2

Resultó ser mod_negotitaion. El maldito mod reescribe mi / index / index en /index.php/index, porque pensó que me había perdido .php

Entonces, cualquier persona que tenga este problema, simplemente deshabilite mod_negotiation y pase un buen rato

Otros consejos

Supongo que realmente ocurre en tu archivo .htaccess o en la configuración de Apache, no específicamente en Kohana. En primer lugar, asegúrese de cambiar el nombre del archivo example.htaccess que viene con Kohana a .htaccess, y es posible que deba reiniciar Apache.

Si está utilizando .htaccess para ocultar la parte index.php de la ruta, verifique cuál es la configuración de RewriteBase:

RewriteBase /kohana/

Si lo instaló en la raíz de su servidor web (como en producción, o usando un puerto separado para localhost), entonces debe cambiarse a:

RewriteBase /

Este es mi error personal más común al configurar nuevos sitios y entornos de desarrollo, por cierto. Esto también es válido para CodeIgniter y otros frameworks PHP relacionados.

¿Su instalación de Apache en el servidor Debian tiene realmente mod_rewrite? Sería bueno confirmar eso. Aquí hay una forma de haz eso .

Un diagnóstico adicional para ver si es culpa de Kohana o de Apache incluye agregar nuevamente en la porción index.php de la ruta. En su caso, intente http: //localhost/kohana/index.php/index . Finalmente, tengo que estar de acuerdo con sarfraz sobre que nombrar a su controlador " index " solo está pidiendo problemas. Mi propia convención es llamarlo "hogar" y para editar la ruta predeterminada en consecuencia.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top