Search code examples
apache.htaccessmod-rewriteindexingclean-urls

How do I remove index.php/html from the url


I am running into a problem concerning the mod_rewrite.

RewriteCond %{THE_REQUEST} /index\.[php|html] [NC]
RewriteRule (.*)index\.[php|html]$ /$1 [R=301,L]

The idea is to get both domain.com/index.php and domain.com/index.html redirected to domain.com. My attempts do not seem to work. The above code is one of my attempts.

It would be great if you could help me out!


Solution

  • Your regex is incorrect You need to use ( ) instead of [ ].

    Use this rule:

    RewriteCond %{THE_REQUEST} /index\.(php|html?) [NC]
    RewriteRule ^(.*?)index\.(php|html?)$ /$1 [R=301,L]