0

正如我的标题所说, $ _POST 方法在我的 CodeIgniter 安装中无法正常工作。发布表单时,这些值不会遵循。

奇怪的事情 1: 它在我的具有完全相同代码的“非子域”网站上运行良好。

奇怪的事情2: 在路径中添加“/index.php/”时有效。但是,我还没有在我的其他网站上这样做。但是我在两个站点上都使用了 .htaccess,甚至这些文件看起来都一模一样。这是代码:

#php_value default_charset UTF-8

RewriteEngine on

RewriteCond $1 !^(index\.php|assets|img|swf|xml|robots\.txt|css|js|favicon.ico|robots.txt|404.html)
RewriteRule ^(.*)$ /index.php/$1 [L]

那么,如何让表单帖子在子域上的 CodeIgniter 安装上正常工作?

4

1 回答 1

1

您的基本网址设置为什么?

当有人访问没有子域subdomain.mysite.com的表单时,很可能会发生这种情况mysite.com

试试这个(你很可能摆脱所有那些额外的重写规则):

$config['base_url'] = 'http://' . $_SERVER['HTTP_HOST'] . '/site-folder-if-any/';

我在发送带有子域的 $_POST 数据时成功使用了它

这也将确保生成的所有链接site_url(), form_open(), etc.都具有正确的 url。

于 2012-10-23T21:27:34.330 回答