centos7 解决 mysql_connect()不支持请检查mysql模块是否正确加载
故障现象:linux 安装discuz 错误提示:mysql_connect() 不支持请检查mysql模块是否正确加载.
解决办法:查看/usr/lib/php/modules/ (64位的看/usr/lib64/php/modules/)里面根本没有mysql.so
找到centos7安装盘,放入光驱,然后找到CentOS目录下的
php-mysql-5.4.16-45.el7.x86_64.rpm
php-pdo-5.4.16-45.el7.x86_64.rpm
二个文件,然后通过FTP上传到服务器。
执行安装:
rpm -i php-mysql-5.4.16-45.el7.x86_64.rpm --nodeps --force pm -i php-pdo-5.4.16-45.el7.x86_64.rpm --nodeps --force
再查看so文件:
ls /usr/lib/php/modules/
dbase.so ldap.so mysqli.so mysql.so pdo_mysql.so pdo.so pdo_sqlite.so phpcups.so
mysql.so存在了。
然后配置(可不配置)
vi /etc/php.ini找到extension=msql.so,然后在它下方去掉前面分号然后添加如下: extension=mysql.so extension=mysqli.so extension=pdo_MySQL.so
保存,重启httpd
/etc/init.d/httpd restart 或者 systemctl restart httpd
刷新网页,mysql已经能连上了。
解决不能打开/var/www/http/目录网页idex页面问题
查看SELinux状态(如果SELinux status参数为enabled即为开启状态)
/usr/sbin/sestatus -v
SELinux status: enabled 《---------此处为enable
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
关闭SELinux:
1、临时关闭(不用重启机器):
##设置SELinux 成为permissive模式
##setenforce 1 设置SELinux 成为enforcing模式
setenforce 0
2、修改配置文件需要重启机器:
修改/etc/selinux/config 文件
~]# vim /etc/selinux/config 第7行代码:SELINUX=enforcing 修改成:SELINUX=disabled 然后重启机器;
其他参考:
Centos 7 Apache 服务安装及配置:https://blog.csdn.net/xgrx2008/article/details/82715186