Elijah
Elijah

Reputation: 3

Htaccess Rewrite rule for removing a dot

Thanks for your help. I have been trying to solve this for an hour now.

I had this Htaccess that would rewrite /file.html to a script but decided to remove the extension and it turned out like this:

RewriteEngine On
#RewriteRule ^([^/]*)\.html$ /?file=$1 [L]
RewriteRule ^([^\.]+)$ /index.php?file=$1 [NC,L]

However, now I need it to work also with filename containing the dot (i.e. /file.with.dots) but that rule doesn't allow it.

This one works for files with dots but ending in .html

#RewriteRule ^(.*)\.html$ /index.php?file=$1 [NC]

This gets me an Internal Server Error

RewriteRule ^([^/]+)$ /index.php?file=$1 [NC,L]

Upvotes: 0

Views: 293

Answers (1)

Panama Jack
Panama Jack

Reputation: 24468

You could just do this.

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)/?$ /index.php?file=$1 [NC,L]

Let me know the result.

Upvotes: 0

Related Questions