Codeigniter数据库设置 - 为什么127.0.0.1工作,localhost没有

时间:2010-08-16 10:00:58

标签: unix codeigniter tcp

在我的Unix网络服务器上,我运行了两个MySQL数据库服务器。一个在端口3306上,另一个在3307上。我想在codeigniter的/config/database.php中指定要连接的数据库的端口号。

我试过了......

$database['hostname'] = "localhost:3307";

这不起作用。 webapp连接到端口3306上的数据库。

然后我试了这个......

$database['hostname'] = "127.0.0.1:3307";

这很有用。 webapp已连接到端口3307上的数据库。

我不明白为什么?有人可以对此有所了解。 我认为这不是一个代码特定的问题,尽管标题。

此致

2 个答案:

答案 0 :(得分:2)

配置中有一个端口索引。试试这个:

$database['port'] = 3307;

此处有更多信息(位于页面底部):

http://codeigniter.com/user_guide/database/configuration.html

答案 1 :(得分:2)

我认为localhost也适用于IPv6,但127.0.0.1无疑是一个IPv4地址,所以它可能会给你的机器带来一些扳手。

我遇到过几次。 (FireFox因为在localhost上的速度很慢而臭名昭着:8000但在使用Django进行开发时速度很快,在127.0.0.1:8000)