我正在运行一个网站,我们需要修改.htaccess。 Google报告了一个错误,指出该URL被另一个PHP文件附加。
例如http://www.example.com/test-file.php/test1-file.php
我们需要删除test1-file.php或使用.htaccess
重定向到404.php页面
我的.htaccess如下所示
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteRule (.*) http://www.example.com/$1 [L,R=301]
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.example.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^.*/
RewriteRule ^(.*)/$ http://www.example.com/$1 [R=301,L
<IfModule mod_rewrite.c>
RewriteEngine on
ErrorDocument 404 http://example.com/404.php
</IfModule>
答案 0 :(得分:1)
您可以使用以下规则:
ErrorDocument 404 /404.php
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^ http://www.%{HTTP_HOST}${REQUEST_URI} [L,R=301,NE]
RewriteCond %{THE_REQUEST} /index\.php [NC]
RewriteRule ^(.*)index\.php$ /$1 [R=301,L,NE]
# Unless directory, remove trailing slash
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [NE,R=302,L]
# remove content after 2nd slash
RewriteRule ^(.+\.php)/.*$ /$1 [L,NC,R=301]