Pregunta

Tengo un nombre de dominio www.jannatband.com, cuando accedo a la URL:

http://jannatband.com/me/asd

Se hace eco con éxito el valor asd, la URL original es como:

http://jannatband.com/me/index.php?u=asd

Código HTACESS para lo anterior:

# .htaccess
RewriteEngine on
RewriteRule ^[aA-zZ]+$ index.php?u=$0

Pero cuando trato de convertir la misma URL a

http://me.jannatband.com/asd

usando esto .htaccess código:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^me\.jannatband\.com$
RewriteCond %{REQUEST_URI} !^/me/
RewriteRule (.*) /me/$1

Me está dando un This webpage is not available error. ¿Qué hay de malo en esto? .htaccess ¿código?

PD: la /me/ es un directorio existente en el public_html.

¿Fue útil?

Solución

Reescribe las reglas cambiarán la URL una vez en su caso. Pero desea que el motor de reescritura funcione en la URL cambiada una vez más.

Puede decirlo especificando una bandera, la siguiente bandera. Del manual:

'Siguiente | N' (Siguiente ronda)Vuelva a ejecutar el proceso de reescritura (comenzando nuevamente con la primera regla de reescritura). Esta vez, la URL a igualar ya no es la URL original, sino la URL devuelta por la última regla de reescritura. Esto corresponde al comando Perl Next o al comando continuar en C. Use este indicador para reiniciar el proceso de reescritura, para ir a la parte superior del bucle.

Así que tenga cuidado cuando lo habilite:

RewriteRule (.*) /me/$1 [N]
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top