重新删除POST请求删除/index.php/ [Codeigniter]

时间:2016-12-22 23:08:43

标签: php .htaccess codeigniter http-post

是否可以更改POST请求的路由?

我刚刚发现我必须在我的表单操作属性中包含/index.php/。让我感到困惑的是,$ _POST数组是空的,并且认为这是CI的错误。

我的.htaccess目前看起来像这样:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_URI} ^system.*
    RewriteCond %{REQUEST_URI} ^application.*
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]
    RewriteCond $1 !^(phpmyadmin|index\.php|images|robots\.txt)
</IfModule>

<IfModule !mod_rewrite.c>
    ErrorDocument 404 /index.php
</IfModule>

<Limit GET POST>
order deny,allow
allow from all
</Limit>

<Limit PUT DELETE>
order deny,allow
deny from all
</Limit>

编辑: 表单重定向到我希望它去的地方,但POST数据也没有到达那里。

1 个答案:

答案 0 :(得分:0)

是的,有可能。

如果您使用的是Apache,请参阅here。如果您使用的是Nginx,请参阅here

可能你正在使用Apache,所以你的.htaccess应该如下所示:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]