自从今天早上将我的网站从本地计算机迁移到服务器后,我遇到了一个问题。
为了替换上下文,我使用框架CodeIgniter开发了一个网站,迁移前的所有内容都运行良好。
经过长时间的研究,似乎当我说出这个:
$autoload['libraries'] = array('database');
我的网站上有一个空白页面,日志中没有任何php / ci错误。
如果我这样说:
$autoload['libraries'] = array();
网站运行正常(好吧,我无法登录,但我没有空白页)。
我在php.ini文件中添加了mysql.so,但它也没有帮助我。
有人已经遇到过这个问题吗?你怎么能解决它?
谢谢!
乙
答案 0 :(得分:7)
在application / config / database.php中 检查
$db['default']['dbdriver'] = 'mysql';
设置为
$db['default']['dbdriver'] = 'mysqli';
答案 1 :(得分:4)
我遇到类似的问题,空白页似乎与加载数据库有关,无论是通过自动加载还是在模型构造函数中调用$this->load->database();
。我最后通过注释extension=php_pdo_mysql.dll
并取消注释extension=php_mysql.dll
(即关闭PDO)来修改我的'php.ini'文件。我正在运行Windows 8.1,Apache 2.2和PHP 5.3.27。
这个答案与另一个答案类似,但我刚刚注册后无法添加评论以澄清。我花了几个小时和很多谷歌搜索来解决,所以希望这对某人有所帮助。
答案 2 :(得分:2)
您确定您的数据库连接凭据是否正确?如果您切换服务器,这似乎可能是问题。
此外,CodeIgniter为生产环境设置error_reporting(0) - 因此为空白页面。检查您的日志目录(可以通过网络服务器进程编写吗??)以获取任何其他信息。
答案 3 :(得分:1)
请重新启动您的网络服务器,然后重试。
使用phpinfo();
创建一个新的info.php文件<?php phpinfo(); ?>
如果加载
,查看mysql扩展是否正在加载尝试为你的directoy做一个chmod 0777
答案 4 :(得分:1)
如果您没有安装php的mysql模块,就会发生这种情况。在Windows中,我相信这附带了php安装程序。如果你在Linux上,例如在Fedora上,这就是你安装它的方式:
sudo yum -y install php-mysql
安装后重新启动Web服务器。假设你正在使用apache httpd:
sudo service httpd restart
现在你应该再次看到这些页面(假设你在conf / database.php中有正确的设置)。
答案 5 :(得分:1)
我刚刚遇到这个错误,在调试MYSQL驱动程序后我发现了问题。
问题是在数据库配置文件中我使用MYSQL作为驱动程序,当它在服务器上安装了MYSQLI时,只需在配置文件上更改它就完成了。
希望这有助于某人。
答案 6 :(得分:0)
听起来您的数据库配置不正确,并且您的PHP安装阻止了错误。
查看您的日志文件或尝试添加
ini_set('display_errors',1);
error_reporting(E_ALL|E_STRICT);
在index.php
中,看看你得到了什么
答案 7 :(得分:0)
对我来说,使用Z-WAMP遇到同样的问题,不得不从php.ini取消注释“extension = php_mysql.dll”。还分配了“mysql.default_port = 3306”和“mysql.default_host = localhost”。希望它可以帮助那里的人
答案 8 :(得分:0)
对于那些使用linux(尤其是ubuntu)但仍在获取空白页面的人,请执行以下操作:
sudo apt-get install php5 libapache2-mod-php5 php5-mysql php5-cli mysql-server
sudo service apache2 restart
$autoload['libraries'] = array('database');
答案 9 :(得分:0)
安装php5-pgsql为我修复它(在Ubuntu上)
答案 10 :(得分:0)
只需转到application / config / database.php并找到
$db['default']['dbdriver'] = 'mysql';
将'mysql'
替换为'mysqli'
$db['default']['dbdriver'] = 'mysqli';
就是这样!