如何安装Apache, MySQL, PHP (LAMP)在CentOS/RHEL 7
LAMP代表Linux、Apache、MySQL和PHP。
它是用来托管用PHP编程语言编写的网站,使用MySQL作为后台数据库服务器。
本文将在CentOS 7和RedHat 7系统上安装Apache 2.4、MySQL 8和PHP 7.3。
步骤1 -准备工作
两个最流行的rpm存储库REMI和EPEL拥有大部分更新的包。
他们还提供了LAMP安装的最新软件包。
在CentOS 7系统上使用以下命令启用这两个存储库。
$ rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm $ rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
步骤2 -安装Apache服务器
Apache或HTTP是基于Linux的系统上最流行的web服务器。
通过启用EPEL和REMI yum存储库,使用以下命令安装Apache web服务器。
$ yum --enablerepo=epel,remi install httpd
现在启动httpd服务并启用在引导时使用命令启动。
$ systemctl enable httpd.service $ systemctl start httpd.service
步骤3 -安装MySQL服务器
首先,使用以下命令在系统中添加MySQL yum存储库。
我们还可以通过访问查找用于其他操作系统的存储库rpm。
下面的命令将与CentOS和RedHat 7一起工作。
$ rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm
默认的MySQL 8存储库是启用安装的。
编辑存储库配置文件(/etc/yum.repos.d/mysql-community.repo)并根据需求启用/禁用存储库。
然后安装MySQL服务器和其他依赖包。
$ yum install mysql-server
安装后启用MySQL服务并启动它。
$ systemctl enable mysqld.service $ systemctl start mysqld.service
安装程序为MySQL root用户生成一个临时密码并复制到日志文件中。
我们可以使用下面的命令找到该密码。
$ grep "A temporary password" /var/log/mysqld.log | tail -n1 A temporary password is generated for Hyman@theitroad: Ei12!YpBy2hx
在新安装的MySQL服务器上执行安全加固。
$ mysql_secure_installation
Enter password for user root: [Enter password here found in log file] The existing password for the user account root has expired. Please set a new password. New password: [Enter new password] Re-enter new password: [Re-enter new password] Change the password for root? - n Remove anonymous users? - y Disallow root login remotely? - y Remove test database and access to it? - y Reload privilege tables now? - y
步骤4 -安装PHP
使用以下命令安装启用EPEL和REMI存储库的PHP包。
$ yum --enablerepo=epel,remi-php74 install php
然后安装所需的PHP模块。
使用以下命令列出可用模块并安装它。
$ yum --enablerepo=remi-php74 list php-* $ yum --enablerepo=remi-php74 install php-mysql php-xml php-xmlrpc php-soap php-gd
在安装php和其他php模块之后,重新启动Apache服务。
$ systemctl restart httpd.service
步骤5 -配置防火墙,运行web服务通过
最后,打开HTTP(80)和HTTPS(443)服务的防火墙端口。
$ firewall-cmd --permanent --zone=public --add-service=<orange>http</orange> $ firewall-cmd --permanent --zone=public --add-service=<orange>https</orange> $ firewall-cmd --reload
步骤6 -检查已安装版本
让我们逐个使用下面的命令检查系统上安装的包的版本。
$ php -v PHP 7.4.5 (cli) (built: Apr 14 2020 12:54:33) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies
$ httpd -v Server version: Apache/2.4.6 (CentOS) Server built: Aug 8 2019 11:41:18
$ mysql -V mysql Ver 8.0.19 for Linux on x86_64 (MySQL Community Server - GPL)
现在,我们已经成功地在CentOS或RedHat 7系统上配置了LAMP设置。