У меня есть проект в Zend Framework 1, где Google проиндексировал ссылки с http://www.example.com/index.php/url в них вместо http://www.example.com/url, таким образом создавая дубликаты и нежелательные ссылки.
У меня есть это правило в htaccess
RewriteRule ^index\.php(.*)$ /$1 [R=301,QSA,L]
это работало нормально, пока мы не обновили Apache до 2.4.6, с тех пор он только перенаправлял ссылки, такие как www.example.com/index.phpurl, а не www.example.com/index.php/url, index.php / url не появляется быть включенным в это выражение.
Кто-нибудь знает решение этой проблемы?
Попробуй это
RewriteEngine On
RewriteBase /myproject/
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(.+)$ index.php/$1 [L]
Других решений пока нет …