0

我一直在开发一个系统,someolddomain.somewhere.com在开发完成后,我将整个 CI 项目代码库复制到一个新文件夹中,在 Apache 中设置新的虚拟主机配置以指向新的目录路径和域,并更改

$config['base_url'] = 'someolddomain.somewhere.com'

在 application/config/config.php 到

$config['base_url'] = 'somenewdomain.somewhere.com'

但是,当我使用 CI 的 form_open 时,表单上的操作仍然以someolddomain.somewhere.com. 我什至尝试将其设置为$config['base_url'] = ''但 form_open 仍在使用旧域。

我已经递归地通过整个 CI 目录结构寻找“someolddomain”,但它不存在。

那么它是从哪里来的呢?

我知道我可以直接使用 html 并设置表单操作,但我真的很想知道为什么会这样。

谢谢

4

3 回答 3

0

系统/核心加载的 Config.php

$this->set_item('base_url', $base_url);

system/helpers 的 form_helper 使用:

 $action = $CI->config->site_url($CI->uri->uri_string());

解决方案:

$config['site_url'] = "NEW DOMAIN"
于 2014-04-30T16:38:01.870 回答
0

问题是由配置引起的

$application_folder = '/var/www/somewhere/someolddomain/application'

在 public/index.php 中。

我完全忘记了这个配置变量,顺便说一句,至少将它放在 config.php 或 application/config 中的其他文件中会更有意义。

一旦我将路径更改为指向正确的文件夹,一切都很好。

于 2014-04-30T15:43:40.253 回答
0

如果您的 .htaccess 看起来不错,并且您似乎找不到其他任何内容,请检查页面是否被缓存。如果它们被缓存,您可以通过删除应用程序/缓存文件夹中的文件来强制刷新。

于 2014-04-30T13:47:02.620 回答