我知道如何从.htaccess中的规则中删除index.php:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]但当我在我的404日志中看到以下内容时,我不知道该怎么办:
video/index.php
video/index.php/index.php
video/index.php/index.php/index.php
video/index.php/index.php/index.php/index.php 有没有一种方法可以删除所有这些,而不需要逐个拼写出来?比如,我是否可以遍历重写规则来一直删除index.php,直到它消失?
非常感谢,菲尔
发布于 2013-03-25 23:45:51
嗯。奇怪的是,人们真的请求这样的URI。
试一试:
RewriteRule ^(.*)\/index\.php$ $1 [R=301,L,NC]这应该会重复删除REQUEST_URI末尾提到的任何index.php,并重定向到正确的one。但是请注意,它每次都会重定向,直到它消失为止。
还要注意的是,我还没有测试它,因为我的PC目前不能工作(尽管这个规则似乎足够基本,可以分享)。如果你遇到任何问题,请告诉我。
https://stackoverflow.com/questions/15615128
复制相似问题