Php 修改.htaccess以删除第二个斜杠后的内容

Php 修改.htaccess以删除第二个斜杠后的内容,php,.htaccess,url,Php,.htaccess,Url,我有一个网站正在运行,我们需要修改。htaccess。谷歌报告了一个错误,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 (.*) htt

我有一个网站正在运行,我们需要修改。htaccess。谷歌报告了一个错误,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>
重新编写引擎打开
重写cond%{HTTP_HOST}^example\.com[NC]
重写规则(.*)http://www.example.com/$1[L,R=301]
RewriteCond%{THE_REQUEST}^.*/index.php
重写规则^(.*)index.php$http://www.example.com/$1[R=301,L]
重写cond%{u请求}^*/
重写规则^(.*)/$http://www.example.com/$1[R=301,L]
重新启动发动机
错误文档404http://example.com/404.php

您可以使用以下规则:

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]