0

我正在使用 .htaccess 重定向规则从 URL 中删除 index.php,当我尝试访问 mysite.com/index.php 并在 mysite.com 上重定向我时效果很好。我在 .htaccess 中使用的重定向规则正是:

RewriteCond %{THE_REQUEST} ^.*/index.php 
RewriteRule ^(.*)index.php$ http://e-tribina.com/$1 [R=301,L] 

但是当我尝试访问前的 URL 时。mysite.com/index.php/folder/folder1 它仍然有效。它不会从 URL 中间删除 index.php。我的谷歌网站管理员工具向我显示了 mysite.com/folder 和 mysite.com/index.php/folder 的重复描述/关键字,并且两个链接仍然有效。

任何 htacces 规则从 URL 中间删除 index.php 并在没有它的情况下重定向到 URL?

使用 Joomla 2.5.11。顺便提一句。

感谢任何帮助。

4

2 回答 2

2
RewriteRule ^index\.php / [R=301,L]
RewriteRule ^index\.php\/(.+) /$1 [R=301,L]
RewriteRule ^(.+)\/index\.php\/(.+) /$1/$2 [R=301,L]

您必须检查字符串的结尾,而不是开头。此外,如果您index.php在子文件夹中,第三条规则将负责处理(前提是您有必要的静默规则)。

注意:仅R=301在适合您的情况下使用。否则,为了测试,只需使用R.

于 2013-05-20T20:33:47.383 回答
0

首先将 htaccess.txt 重命名为 .htaccess。

然后转到全局配置并设置使用 URL 重写 - 是

然后保存并检查

可能这个很有帮助!

于 2013-06-05T07:44:41.193 回答