.htaccess

Eliminar barra inclinada con.htaccess, excepto página de inicio/destino



(3)

DE ACUERDO. Después de varios intentos de prueba y error, respondí mi propia pregunta.

La tercera línea denota que tiene que haber algo en el URI para realizar el redireccionamiento, por lo que no se redirecciona si el url solo contiene la barra inicial.

RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} (.*)$ RewriteRule ^(.+)/$ http://www.domain.com/$1 [R=301,L]

He modificado con éxito mi archivo .htaccess para eliminar barras diagonales en la mayoría de las páginas, pero me pregunto cómo puedo exentar mi página de inicio / directorio. Por ejemplo:

domain.com/test/ redirecciona con éxito a domain.com/test

SIN EMBARGO, cuando toco mi dominio, anexará el documento raíz

domain.com/ redirige a domain.com/index.php

¿Hay alguna condición que pueda agregar para ignorar la barra diagonal raíz de raíz para que no intente eliminar la barra inclinada y agregar mi secuencia de comandos predeterminada? Esto es lo que tengo hasta ahora:

RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} ^(.+)/$ RewriteRule ^(.+)/$ /$1 [R=301,L]


Qué tal si

RewriteEngine On RewriteRule ^(.*)/$ http://%{HTTP_HOST}/$1


Redirige la solicitud de todas las URL que terminan en a / excepción de la raíz:

RedirectMatch 301 ^(.+)/$ $1