在CentOS 7上搭建LNMP环境,即Linux、Nginx、MySQL/MariaDB和PHP的环境,是很多开发者和企业常用的一种配置方案,以下是详细的步骤和说明:
准备工作
1、登录Linux实例:使用SSH工具或远程登录软件连接到CentOS 7服务器。
2、更新系统软件包:执行yum update y
命令,确保所有已安装的软件包都是最新的。
3、关闭防火墙和SELinux(可选):虽然不是必须的,但为了简化配置,可以选择关闭防火墙和SELinux,执行以下命令:
临时关闭防火墙:systemctl stop firewalld
永久关闭防火墙:systemctl disable firewalld
临时关闭SELinux:setenforce 0
永久关闭SELinux:编辑/etc/selinux/config
文件,将SELINUX=enforcing
改为SELINUX=disabled
。
安装Nginx
1、添加Nginx存储库:
创建Nginx存储库文件:vi /etc/yum.repos.d/nginx.repo
添加以下内容到文件中:
```ini
[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
```
保存并退出编辑器。
2、安装Nginx:执行yum install y nginx
命令来安装Nginx。
3、启动Nginx服务:执行systemctl start nginx
命令来启动Nginx服务。
4、设置Nginx开机自启动:执行systemctl enable nginx
命令来设置Nginx服务随系统启动而自动启动。
5、配置Nginx:根据实际需求编辑Nginx的配置文件(通常位于/etc/nginx/nginx.conf
或/etc/nginx/conf.d/default.conf
),例如设置虚拟主机、SSL证书等。
安装MariaDB
1、添加MariaDB存储库:
创建MariaDB存储库文件:vi /etc/yum.repos.d/MariaDB.repo
添加以下内容到文件中(以MariaDB 10.4为例):
```ini
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7amd64
gpgkey=https://yum.mariadb.org/RPMGPGKEYMariaDB
gpgcheck=1
enabled=1
```
保存并退出编辑器。
2、安装MariaDB:执行yum install y MariaDBserver MariaDBclient
命令来安装MariaDB。
3、启动MariaDB服务:执行systemctl start mariadb
命令来启动MariaDB服务。
4、设置MariaDB开机自启动:执行systemctl enable mariadb
命令来设置MariaDB服务随系统启动而自动启动。
5、安全配置MariaDB:执行mysql_secure_installation
命令来进行MariaDB的安全配置,如设置root密码、删除匿名用户、禁止远程root登录等。
安装PHP
1、添加Remi存储库:
Remi存储库包含了许多PHP版本,可以方便地安装和管理PHP及其扩展。
安装EPEL存储库(如果尚未安装):yum install y epelrelease
安装Remi存储库:yum install y https://rpms.remirepo.net/enterprise/remirelease7.rpm
2、启用PHP 7.4存储库(以PHP 7.4为例):
执行yumconfigmanager enable remiphp74
命令来启用PHP 7.4的存储库。
3、安装PHP及其常用扩展:
执行yum install y php phpfpm phpcommon phpopcache phpmcrypt phpmbstring phpxml phpgd
命令来安装PHP及其常用扩展。
4、启动PHPFPM服务:执行systemctl start phpfpm
命令来启动PHPFPM服务。
5、设置PHPFPM开机自启动:执行systemctl enable phpfpm
命令来设置PHPFPM服务随系统启动而自动启动。
配置Nginx与PHP的协作
1、编辑Nginx配置文件:打开Nginx的配置文件(如/etc/nginx/conf.d/default.conf
),在server块中添加对PHP的支持。
```nginx
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/phpfpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
```
2、重启Nginx服务:编辑完Nginx配置文件后,需要重启Nginx服务以使更改生效,执行systemctl restart nginx
命令即可。
测试LNMP环境
1、创建测试PHP文件:在Nginx的web根目录(如/usr/share/nginx/html
)下创建一个名为info.php
的文件,内容如下:
```php
<?php
phpinfo();
?>
```
2、访问测试页面:在浏览器中输入服务器的IP地址或域名,并加上/info.php
,如http://your_server_ip/info.php
,如果看到PHP的信息页面,则说明LNMP环境搭建成功。
FAQs
1、问题一:为什么在安装Nginx时需要添加存储库?
答案:默认情况下,CentOS 7的官方存储库可能不包含最新版本的Nginx,通过添加Nginx的官方存储库,可以确保安装到最新稳定版本的Nginx,并获得更好的性能和安全性。
2、问题二:如何检查MariaDB是否安装成功?
答案:可以通过执行mysql V
命令来查看MariaDB的版本号,如果能够正确显示版本信息,则说明MariaDB已成功安装,还可以尝试连接到MariaDB数据库,执行一些基本的SQL语句来进一步验证。
通过以上步骤,您应该能够在CentOS 7上成功搭建一个功能完善的LNMP环境,请根据您的具体需求进行调整和优化。