我一直在我的.htaccess文件中使用以下代码,以使EE URL工作,而不需要URL中的index.php。虽然我发现我从抓取工具获得一些报告,但是我正在获取重复内容,因为/ lorem / ipsum /也出现在/index.php/lorem/ipsum /.
我知道这很可能是由于引用URL中的index.php的杂散链接造成的,但我想通过强制index.php从链接中来弥补差距。我已经环顾四周,但我似乎无法找到如何强制它。
RewriteEngine On
RewriteBase /
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
答案 0 :(得分:8)
当然可以。
# Enable Rewrite Engine
# ------------------------------
RewriteEngine On
RewriteBase /
# Redirect index.php Requests
# ------------------------------
RewriteCond %{THE_REQUEST} ^[^/]*/index\.php [NC]
RewriteCond %{THE_REQUEST} ^GET
RewriteRule ^index\.php(.+) $1 [R=301,L]
# Standard ExpressionEngine Rewrite
# ------------------------------
RewriteCond $1 !\.(css|js|gif|jpe?g|png) [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]