我想在我的htaccess文件中创建重定向。从带有index.php的url到没有index.php的页面,但仅适用于一个特定文件夹" catalog"。
例如:
从/catalog/some_folder/index.php
到/catalog/some_folder/
或
从/catalog/some_folder/etc/index.php
到/catalog/some_folder/etc/
此/catalog2/some_folder/index.php
之类的网址必须重定向
我尝试添加这些行(localhost因为它是xampp):
RewriteCond %{REQUEST_URI} /catalog/+[^\.]+index.php$
RewriteRule ^index\.php$ localhost/$1 [R=301,L]
但这并没有奏效。我怎么能强迫它正常工作?
答案 0 :(得分:1)
if gae == "Y" or "y"
如果您需要删除地址末尾的所有“ index.php”
答案 1 :(得分:0)
删除index.php:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]
请记住,您需要激活mod_rewrite。
答案 2 :(得分:0)
您可以在root .htaccess中使用此规则:
# remove index.php
RewriteCond %{THE_REQUEST} /index\.php [NC]
RewriteRule ^(catalog/.+)index\.php$ /$1 [L,R=302,NC,NE]
答案 3 :(得分:0)
RewriteEngine On
RewriteCond %{THE_REQUEST} (?:/[^/]*)*/index\.php[?#\ ]
RewriteRule .* %{REQUEST_URI}/../ [L,R=301]
对我来说,这是有效的,上面的解决方案是将我发送到一个级别的文件夹。