我创建了一个htaccess表单,它只包含:
<IfModule mod_rewrite.c>
RewriteEngine On
# Removes index.php from ExpressionEngine URLs
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
- &gt;在最新的用户指南中显示为删除index.php的新支持方式。
一切都很好,我的联系表格工作正常 - 除了表单提交后,显示消息然后重定向它没有重定向回我指定的主页(目前是testsite7),但它实际上是重定向到“ testsite7 / _mp3“我不知道它为什么显示这个?这是我服务器上的文件夹,里面有音乐文件。
我的网站位于插件域,EE安装位于root之上。
任何想法!
答案 0 :(得分:0)
有趣,不知道为什么它会重定向到该特定文件夹,我不明白为什么该代码会导致它。可能值得尝试一种不同的.htaccess方法来缩小问题的范围。这是我们在所有大型网站上使用的,并且一直运行良好。也许试一试:
# turn on mod_rewrite
RewriteEngine On
RewriteBase /
# make sure index.php is always removed from url
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+index\.php(/[^\s\?]+)? [NC]
RewriteRule ^ %1 [L,R=301]
# make sure we don't have a trailing slash unless it's a directory
# RewriteCond %{REQUEST_FILENAME} !-d
# RewriteRule ^(.+)/$ /$1 [L,R=301]
# make sure requests are routed through index.php but not in url this helps certain addons.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^ index.php%{REQUEST_URI} [L,NC]