在RHEL/CentOS 8上安装和配置phpMyAdmin
如何在RHEL/CentOS 8上安装phpMyAdmin?
在这篇文章中,我们将介绍如何在RHEL 8上安装和配置phpMyAdmin。phpMyAdmin是一个用PHP编写的开源软件工具,用于从Web界面管理MySQL和MariaDB数据库服务器。
phpMyAdmin支持在MySQL,MariaDB和Drizzle上的多种操作。使用此工具,我们可以通过直观且易于使用的Web界面管理数据库,表,列,关系,索引,用户,权限和其他内容。
在RHEL/CentOS 8上安装和配置phpMyAdmin
以下是在RHEL 8上安装和配置phpMyAdmin时要遵循的步骤。所需的依赖项是要管理的PHP,Apache Web服务器和数据库服务器。
安装PHP
phpMyAdmin用PHP编写,我们需要将其安装在RHEL服务器上。我们已经编写了有关在RHEL 8上安装PHP的综合教程。
如何在RHEL 8/CentOS 8上安装PHP
确保已安装php-mysqlnd
扩展名。
sudo yum -y install php-mysqlnd
安装MariaDB/MySQL数据库服务器
下一步是安装MariaDB/MySQL数据库服务器。请遵循以下教程在RHEL 8上安装MariaDB或者MySQL。
如何在RHEL 8上安装MySQL 8.0
如何在RHEL 8上安装MariaDB数据库服务器
安装Apache Web服务器
phpMyAdmin支持Apache和Nginx作为Web服务器。我们选择Apache httpd服务器,因为它是企业和RHEL生态系统中使用最多的Web服务器。
使用下面的教程在RHEL 8上安装Apache Web服务器。
如何在RHEL 8上使用mod_ssl和mod_http2安装Apache
在RHEL 8上安装phpMyAdmin
访问phpMyAdmin下载页面并检查最新的可用软件包。
将版本保存到变量。
DATA="$(wget https://www.phpmyadmin.net/home_page/version.txt -q -O-)" URL="$(echo $DATA | cut -d ' ' -f 3)" VER="$(echo $DATA | cut -d ' ' -f 1)"
下载上面指定的最新版本。
curl -o phpMyAdmin-${VER}-all-languages.tar.gz https://files.phpmyadmin.net/phpMyAdmin/${VER}/phpMyAdmin-${VER}-all-languages.tar.gz
对于仅英语语言的软件包,请使用:
curl -o phpMyAdmin-${VER}-english.tar.gz https://files.phpmyadmin.net/phpMyAdmin/${VER}/phpMyAdmin-${VER}-english.tar.gz
解压缩下载的存档
$tar xvf phpMyAdmin-${VER}-english.tar.gz OR $tar xvf phpMyAdmin-${VER}-all-languages.tar.gz
将文件夹移至"/usr/share/phpmyadmin"。
rm phpMyAdmin-*.tar.g sudo mv phpMyAdmin-*//usr/share/phpmyadmin
为phpMyAdmin临时文件创建目录。
sudo mkdir -p /var/lib/phpmyadmin/tmp sudo chown -R apache:apache /var/lib/phpmyadmin
为phpMyAdmin配置文件(例如htpass文件)创建目录。
sudo mkdir /etc/phpmyadmin/
创建phpMyAdmin配置文件。
sudo cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
编辑档案
sudo vim /usr/share/phpmyadmin/config.inc.php
设置一个秘密密码短语需要为32个字符长
$cfg['blowfish_secret'] = 'H2OxcGXxflSd8JwrwVlh6KW6s2rER63i';
配置临时目录
$cfg['TempDir'] = '/var/lib/phpmyadmin/tmp';
配置Apache Web服务器
创建phpMyAdmin Apache配置文件。
sudo vim /etc/httpd/conf.d/phpmyadmin.conf
添加以下数据:
# Apache configuration for phpMyAdmin Alias /phpMyAdmin /usr/share/phpmyadmin/ Alias /phpmyadmin /usr/share/phpmyadmin/ <Directory /usr/share/phpmyadmin AddDefaultCharset UTF-8 <IfModule mod_authz_core.c> # Apache 2.4 Require all granted </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory>
我们可以通过添加以下行来限制来自特定IP的访问
Require ip 127.0.0.1 192.168.0.0/24
验证Apache配置。
$sudo apachectl configtest Syntax OK
重新启动httpd服务以加载新配置,
sudo systemctl restart httpd
配置SELinux和防火墙
如果我们将SELinux置于强制模式下,则在尝试访问phpMyAdmin页面时,将显示"权限被拒绝"错误。允许httpd提供phpmyadmin目录中的内容。
sudo semanage fcontext -a -t httpd_sys_content_t "/usr/share/phpmyadmin(/.*)?"
通过运行命令来应用策略。
sudo restorecon -Rv /usr/share/phpmyadmin
在防火墙中允许http端口。
sudo firewall-cmd --add-service=http --permanent
重新加载防火墙重新加载配置。
sudo firewall-cmd --reload
在RHEL 8上访问phpMyAdmin Web界面
打开URLhttp://[ServerIP | Hostname]/phpmyadmin
使用数据库凭据用户名和密码登录phpMyAdmin仪表板。