.htaccess y redirección de links

Iniciado por Wargolth, 13 Mayo 2010, 20:39 PM

0 Miembros y 1 Visitante están viendo este tema.

Wargolth

Hola buenas,

Mi servidor Apache parece ignorar mi .htaccess. Para localizar el problema he reducido mi prueba al máximo, paso a los detalles.

Tengo instalado en el ordenador EasyPhp, un programa que muchos de vosotros conoceréis con los siguientes paquetes:

Apache 2.2.13
MySql 5.1.37
Php 5.3.0

Trabajo con Win XP SP2 si eso fuese también importante y hago mis tests con Mozilla firefox, última versión.

El caso es que intento un .htaccess simplísimo para verificar si se produce bien la reescritura de URLs (que es lo que quiero conseguir) y parece no funcionar. Tengo en la carpeta pertinente (C:\Archivos de programa\EasyPHP5.3.0\www\) los archivos de mis diferentes páginas.

La que estoy desarrollando ahora la he metido en [...]\www\Entorno\ . En esta carpeta hay tres cosas:

.htaccess
palo.php
pino.php

Mi intención es que cuando alguien llame meta en el navegador "http://localhost/Entorno/palo.php", este sea automáticamente redirigido a "http://localhost/Entorno/pino.php".

Para ello he puesto el código siguiente en el .htacces:

RewriteEngine on
RewriteRule ^palo.php$ pino.php


Ya había hecho funcionar hace un tiempo en Ubuntu y con un servidor Apache simplista una funcionalidad parecida así que no comprendo el porque de que no funcione.

¿Hay alguna cosa que esté haciendo mal que véais fácilmente desde fuera? En estos momentos por mucho que miro tutoriales no veo que podría tener que corregir y me pregunto si es culpa del EasyPhp o que las direcciones que escribo no son correctas u otra tontería cualquiera. En fin, creo haber detallado suficiente el problema, sino simplemente pedidme que datos son importantes. Cualquier pequeña indicación será de muchísima ayuda.

Un saludo,

Wargolth


sexto

Fua yo con Linux me tuve que pelear con él un poco pero lo puse, aunque no recuerdo como. Pero en Windows es un puto infierno, estuve trabajando una vez en una empresa que necesitaba ponerlo y nos volvimos todos locos y queríamos tirarnos por la ventana. Al final lo pusimos, pero no fui yo así que no me acuerdo..

Los archivos de configuración de Apache los tienes todos bien?

Wargolth

Sí, el apache funciona al 100% pero es el EasyPhp quien se encarga de gestionarlo. En definitiva, no he tocado a la configuración original y esta es la primera cosa que parece no funcionar.

Wargolth

el-brujo

#3
Por defecto la configuración del Apache en el directorio por defecto, no "lee-mira" los .htaccess.

Tienes que quitar el AllowOverride None del fichero de config del apache httpd.conf

Wargolth

Hice la modificación y no hubo ningún cambio aparente. Probé a reiniciar completamente mi servidor y parece tampoco dar resultado. Lo mismo cerrando EasyPhp y abriéndolo de nuevo.

De hecho al principio había puesto en comentario otra línea que no era esa, pero luego me di cuenta de cuál era la buena por los comentarios que estaban justo encima.

Dejo la configuración con la línea que me has dicho en comentario pero parece que aún se necesitan más modificaciones. Es posible que el httpd.conf necesite más configuraciones que con EasyPhp no me pidió en un principio.

También probé con la otra opción que me daba el servidor en los comentarios de arriba. Sustituí la línea en cuestión por: "AllowOverride All". Este fue el error que recibí:

Citar¡Error en el servidor!

El servidor encontro un error interno y fue imposible completar su solicitud. Existe tambien la posibilidad de que el servidor este sobrecargado o de algún error en un programa de CGI.

Por favor contacte con el webmaster en caso de que usted crea que existe un error en el servidor.
Error 500

Tengo dos páginas y de una estoy seguro que la programación es correcta (ya funcionó en Linux). Así que el error estará sin duda en el servidor. Muchas gracias por la ayuda que me estáis prestando.

Un saludo,

Wargolth

el-brujo

Pues ahora mira el error_log del apache para ver más pistas sobre el error 500 del servidor.