我已使用htaccess删除了我的网址扩展名(.php),甚至使URL扩展名.php重定向到404错误,就像如果我的网址是www.example.com/page/有些人在www.example.com/page.php这样的末尾添加了.php扩展名,页面重定向,因为它应该是 ,但问题是当我打开url:“www.example.com/page.php/”时扩展名和斜杠打开。没有重定向,没有。我希望重定向到404.htaccess重写规则扩展与斜杠错误
请仔细阅读我的htaccess内容,并建议我进行改进,如果需要的话。任何帮助将不胜感激。
非www到www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com [nocase]
RewriteRule ^(.*) http://www.example.com/$1 [last,redirect=301]
索引页只域
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index/
RewriteRule ^index/$ http://www.example.com/ [R=301,L]
删除扩展,并增加了削减
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/$ $1.php
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
删除多个斜线
RewriteBase/
RewriteCond %{HTTP_HOST} !=""
RewriteCond %{THE_REQUEST} ^[A-Z]+\s//+(.*)\sHTTP/[0-9.]+$ [OR]
RewriteCond %{THE_REQUEST} ^[A-Z]+\s(.*/)/+\sHTTP/[0-9.]+$
RewriteRule .* http://%{HTTP_HOST}/%1 [R=404,L]
上面的代码删除扩展,并添加斜线已在加斜线部分的一些错误...代码适用于2 - 中的文件3个子文件夹,然后它返回一个404错误..很好地更正了代码... – Aryan 2014-10-26 12:39:10