我的URL的类型为:www.mysite.fr,任何页面的类型为:www.mysite.fr/index.php/test
我希望www.mysite.fr/test显示www.mysite.fr/index.php/test(没有index.php会更漂亮!)
我尝试了此方法,但是:www.mysite.fr/test显示了主页而不是测试页
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
答案 0 :(得分:0)
尝试一下:
RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,7}\s/(.*)index\.php/(.*)\sHTTP.*$ [NC]
RewriteRule ^ /%1%2 [R=301,L]
RewriteCond %{REQUEST_URI} !index\.php
RewriteRule ^(.*)$ index.php/$1 [L]
第二行将index.php
彻底删除。
第五行将请求内部重定向到原始路径。
注意:清除浏览器缓存测试
答案 1 :(得分:0)
您的方法适用于我的本地主机,但不适用于我的在线站点。我认为这是第5行,但我不明白为什么在索引之前甚至添加斜杠。 有人有主意吗?