我刚刚将我的codeigniter proejct从我的wamp服务器转移到我几乎免费的语音服务器,并且遇到了一些奇怪的问题。我正在使用我在网上找到的mod_rewrite从网址中删除臭名昭着的'index.php',我认为当我提交表单时会导致重定向,从而丢失帖子数据。
这是我的htaccess文件:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
在表单调用的脚本中,我正在检查是否有帖子数据。如果没有帖子数据,我会重定向到404错误(这是为了防止人们通过网址调用脚本)。因此,在上传网站后,我在每个表单提交时都收到404错误,表明没有数据被发送。但是,出于调试目的,我从脚本中删除了所有代码,并发现提交表单现在会加载一个空白页面。由于表单不应该实际加载新页面,这表明脚本重定向到自身,从而丢失了后期数据,最后满足我的发布数据测试并重定向到404。
有关此重定向发生原因的任何想法?这真的非常重要,我将非常感谢任何建议!
由于
答案 0 :(得分:0)
看起来服务器没有启用mod_rewrite。
尝试删除IfModule mod_rewrite.c和IfModule标记以查看是否 你得到一个内部服务器错误..
Hashem Qolami是正确的没有重定向标志所以你的codeigniter路由器正在重定向......