CentOS 8 安装Apache、MySQL 和PHP (LAMP安装步骤)

CentOS 8 安装Apache、MySQL 和PHP (LAMP安装步骤)

LAMP是Linux、Apache、MySQL和PHP的缩写。

Apache是用于通过HTTP协议提供文件的Web服务器。

MySQL是流行的数据库服务器。

PHP是用于开发Web应用程序的编程语言。

使用这些应用程序,我们可以创建完整的Web服务器。 在Apache上运行PHP应用程序的最常见方法是使用mod_php模块。 同样好的选择是使用PHP-FPM,与之相比,PHP-FPM具有许多优点。 CentOS 8上的默认安装使用PHP-FPM处理php文件。

LAMP一键安装包

本教程将帮助您在CentOS 8和RHEL 8 Linux系统上安装和配置LAMP(Linux、Apache、MySQL和PHP)。

 

安装要求

  • 新安装的CentOS 8服务器或电脑。
  • 完成初始服务器设置
  • 具有sudo特权的Shell访问

 

第一步:安装Apache

Apache Web服务器软件包可在CentOS 8上的默认AppStream存储库中找到。您只需使用以下命令更新DNF缓存并安装软件包即可。

sudo dnf update 
sudo dnf install httpd httpd-tools

mod_ssl软件包提供了将SSL证书用于安全HTTP的功能。 安装后,启用httpd服务并启动。

sudo systemctl enable httpd.service
sudo systemctl start httpd.service

通过以下命令查看Apache服务状态:

sudo systemctl status httpd.service

正常状态将显示如下信息:

httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/httpd.service.d
           └─php-fpm.conf
   Active: active (running) since Sat 2020-11-21 04:27:24 EDT; 5s ago
     Docs: man:httpd.service(8)
 Main PID: 8644 (httpd)
   Status: "Started, listening on: port 80"
    Tasks: 213 (limit: 8918)
   Memory: 21.5M
   CGroup: /system.slice/httpd.service
           ├─8644 /usr/sbin/httpd -DFOREGROUND
           ├─8650 /usr/sbin/httpd -DFOREGROUND
           ├─8651 /usr/sbin/httpd -DFOREGROUND
           ├─8652 /usr/sbin/httpd -DFOREGROUND
           └─8653 /usr/sbin/httpd -DFOREGROUND

Nov 21 04:27:23 tecadmin systemd[1]: Starting The Apache HTTP Server...
Nov 21 04:27:24 tecadmin systemd[1]: Started The Apache HTTP Server.
Nov 21 04:27:24 tecadmin httpd[8644]: Server configured, listening on: port 80

第二步:安装MySQL

最新的MySQL 8软件包可在CentOS 8的AppStrem存储库中找到。使用以下命令在系统上安装包括所需软件包的MySQL服务器。

sudo dnf -y install @mysql

完成安装后,启用MySQL服务以在系统启动时自动启动。 还要首次手动启动服务。

sudo systemctl enable mysqld.service
sudo systemctl start mysqld.service

然后使用以下命令查看服务的当前状态:

sudo systemctl status mysqld.service
mysqld.service - MySQL 8.0 database server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2020-11-21 02:49:33 EDT; 5min ago
  Process: 5841 ExecStartPost=/usr/libexec/mysql-check-upgrade (code=exited, status=0/SUCCESS)
  Process: 5706 ExecStartPre=/usr/libexec/mysql-prepare-db-dir mysqld.service (code=exited, status=0/SUCCESS)
  Process: 5682 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS)
 Main PID: 5798 (mysqld)
   Status: "Server is operational"
    Tasks: 38 (limit: 8918)
   Memory: 442.1M
   CGroup: /system.slice/mysqld.service
           └─5798 /usr/libexec/mysqld --basedir=/usr

Nov 22 02:48:42 tecadmin systemd[1]: Starting MySQL 8.0 database server...
Nov 22 02:48:45 tecadmin mysql-prepare-db-dir[5706]: Initializing MySQL database
Nov 22 02:49:33 tecadmin systemd[1]: Started MySQL 8.0 database server.

MySQL安装已完成。 现在,您可以不使用任何密码即可连接MySQL服务器,但是我们建议确保MySQL安装的安全。 MySQL软件包提供mysql_secure_installation命令来应用安全性。 只需在终端上运行以下命令:

sudo mysql_secure_installation

并按照屏幕上的说明进行操作。 以下是需要用户输入的详细信息:

Press y|Y for Yes, any other key for No: y
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2
New password: [ENTER STRONG PASSWORD HERE]
Re-enter new password: RE ENTER PASSWORD HERE
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y

第三步:安装PHP

Remi库包含用于CentOS 8 Linux系统的最新PHP软件包。 因此,首先,您需要将REMI存储库添加到系统中。 只需执行以下命令即可添加存储库:

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

 

然后启用PHP安装所需的DNF模块。 在这里,我们启用用于安装PHP 7.4的模块。 您可以根据需要将其更改为PHP 7.3或PHP 7.2。

sudo dnf module reset php
sudo dnf module enable php:remi-7.4

在系统上启用存储库后。 安装PHP软件包以及必需的PHP模块。

sudo dnf install php php-mysqlnd

您还需要根据您的应用程序要求安装其他必需的php模块。 以下命令将安装一些常用的php模块:

dnf install php-gd php-zip php-mcrypt php-json php-xml php-gettext php-curl php-intl

 

第四步:创建Apache虚拟主机

已安装LAMP环境所需的所有软件包。 现在,创建Apache虚拟主机。 默认情况下,Apache使用php-fpm在CentOS 8系统上处理PHP文件。

在收藏夹文本编辑器中创建和编辑虚拟主机配置文件:

sudo vim /etc/httpd/conf.d/linux.dogeek.net.conf

在配置文件中添加以下内容。 确保更改必需的参数:

<VirtualHost *:80>
    ServerAdmin admin@dogeek.net
    DocumentRoot /var/www/html
 
    ServerName linux.dogeek.net
    ServerAlias www.linux.dogeek.net
 
    ErrorLog logs/dogeek.net-error.log
    CustomLog logs/dogeek.net-access.log combined
</VirtualHost>

保存虚拟主机配置文件,然后重新启动Apache确保更新应用更改:

sudo systemctl restart httpd.service

注: 可选帮助链接: 此视频链接可帮助您快速免费安装SSL证书:点此观看>>

第五步:防火墙放通必要端口

CentOS 8 Linux服务器已准备就绪,可以在LAMP环境中为应用程序提供服务。 如果您的系统已安装防火墙并处于活动状态,则需要允许Apache端口。 这将允许网络用户从远程系统访问Web应用程序。

以下命令将为您打开所需的端口:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload

第六步:测试安装结果

全部安装完成! 接下来测试环境,使用phpinfo()函数创建一个PHP脚本。 将此文件放置到服务器文档根目录。 使用以下命令执行此操作:

echo "" > /var/www/html/info.php

然后使用您在Apache虚拟主机中配置的域名或服务器IP地址访问info.php。

http://linux.dogeek.net/info.php

如果您能从以上测试地址看到如以下类似画面就证明已安装成功!

 

THE END
分享
二维码
< <上一篇
下一篇>>