在 CentOS 7 下,通过创建 install_lnmp.sh
文件配置 LNMP(Linux、Nginx、MySQL、PHP)环境,可以按照以下步骤操作:
1. 首先,创建一个名为 install_lnmp.sh
的文件,并给予它可执行权限:
touch install_lnmp.sh
chmod +x install_lnmp.sh
2. 使用文本编辑器(如 nano
或 vi
)打开 install_lnmp.sh
文件,并添加以下内容:
#!/bin/bash
# 更新系统
sudo yum update -y
# 安装 EPEL 仓库
sudo yum install -y epel-release
# 安装 Nginx
sudo yum install -y nginx
# 启动 Nginx 并设置开机自启动
sudo systemctl start nginx
sudo systemctl enable nginx
# 安装 MySQL
sudo yum install -y mariadb-server
# 启动 MySQL 并设置开机自启动
sudo systemctl start mariadb
sudo systemctl enable mariadb
# 安装 PHP 及其扩展
sudo yum install -y php php-fpm php-mysql
# 启动 PHP-FPM 并设置开机自启动
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
# 配置 Nginx 支持 PHP
sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
sudo sed -i 's/include fastcgi_params;/include fastcgi.conf;/' /etc/nginx/fastcgi_params
sudo sed -i 's/fastcgi_pass 127.0.0.1:9000;/fastcgi_pass unix:\/var\/run\/php-fpm\/php-fpm.sock;/' /etc/nginx/conf.d/default.conf
# 重启 Nginx 和 PHP-FPM
sudo systemctl restart nginx
sudo systemctl restart php-fpm
echo "LNMP 环境安装完成!"
备注:建议把安装数据库单独安装,因为会有输入密码容易卡住。
3. 保存并关闭文件。
4. 在终端中运行 install_lnmp.sh
文件:
./install_lnmp.sh
5. 按照提示输入 root 用户密码,以便在安装过程中执行特定操作。
完成以上步骤后,LNMP 环境将成功安装在 CentOS 7 系统上。你可以通过访问服务器的 IP 地址或域名来验证 Nginx 是否正常运行。如果看到 “Welcome to Nginx!” 页面,说明 Nginx 已经成功安装并运行。接下来,你可以根据需要配置 Nginx、MySQL 和 PHP,以满足你的项目需求。
要检查LNMP环境是否已经在CentOS 7上搭建完成,请按照以下步骤操作:
1. 检查Linux内核版本:
uname -r
确保内核版本为3.10或更高。
2. 检查Nginx是否已安装并运行:
systemctl status nginx
如果Nginx已安装并正在运行,您将看到类似于以下的输出:
nginx.service - The NGINX HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2021-09-06 10:00:00 UTC; 1h 0min ago
Main PID: 12345 (nginx)
CGroup: /system.slice/nginx.service
├─12345 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
└─12346 nginx: worker process
3. 检查MySQL/MariaDB是否已安装并运行:
systemctl status mysqld
或者
systemctl status mariadb
如果MySQL/MariaDB已安装并正在运行,您将看到类似于以下的输出:
mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2021-09-06 10:00:00 UTC; 1h 0min ago
Main PID: 12345 (mysqld)
Status: "Server is operational"
CGroup: /system.slice/mysqld.service
└─12345 /usr/sbin/mysqld
4. 检查PHP是否已安装并运行:
systemctl status php-fpm
如果PHP已安装并正在运行,您将看到类似于以下的输出:
php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2021-09-06 10:00:00 UTC; 1h 0min ago
Main PID: 12345 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php-fpm.service
├─12345 php-fpm: master process (/etc/php-fpm.conf)
└─12346 php-fpm: pool www
5. 检查防火墙设置:
确保防火墙允许HTTP(端口80)和HTTPS(端口443)流量。您可以使用以下命令检查防火墙规则:
firewall-cmd --list-all
如果所有这些组件都已安装并正在运行,并且防火墙已正确配置,那么您的LNMP环境应该已经在CentOS 7上搭建完成。
要更改 Nginx 服务器的 IP 地址,请按照以下步骤操作:
1. 停止 Nginx 服务:
在命令行中输入以下命令以停止 Nginx 服务:
sudo service nginx stop
或者
sudo systemctl stop nginx
2. 修改 Nginx 配置文件:
使用文本编辑器打开 Nginx 配置文件。通常情况下,该文件位于 /etc/nginx/nginx.conf
或 /etc/nginx/sites-available/default
。
查找以下行:
server {
listen 80;
server_name YOUR_CURRENT_IP_ADDRESS;
}
将 YOUR_CURRENT_IP_ADDRESS
替换为新的 IP 地址。
如果没有足够的权限来访问 /etc/nginx/nginx.conf 文件。要解决这个问题,你可以使用以下方法:
这个问题是因为你没有足够的权限来访问 /etc/nginx/nginx.conf
文件。要解决这个问题,你可以使用以下方法:
- 使用
sudo
命令:
在访问 /etc/nginx/nginx.conf
文件之前,你需要使用 sudo
命令来提升权限。例如,你可以使用以下命令来查看文件内容:
sudo cat /etc/nginx/nginx.conf
或者,你可以使用以下命令来编辑文件:
sudo nano /etc/nginx/nginx.conf
- 更改文件权限:
如果你希望不使用 sudo
命令,你可以更改 /etc/nginx/nginx.conf
文件的权限,以便你可以访问它。但是,请注意,这可能会导致安全问题,因为其他用户可能会具有对文件的写访问权限。要更改文件权限,你可以使用以下命令:
sudo chmod 644 /etc/nginx/nginx.conf
这将允许文件所有者具有读写权限,而其他用户只具有读权限。然后,你可以直接访问文件,而无需使用 sudo
命令。
请注意,在更改文件权限后,你可能需要使用 sudo
命令来执行某些操作,例如重启 Nginx 服务。
-
保存并关闭配置文件。
-
启动 Nginx 服务:
在命令行中输入以下命令以启动 Nginx 服务:
sudo service nginx start
或者
sudo systemctl start nginx
现在,Nginx 服务器应该已经使用新的 IP 地址运行。请确保更新任何相关的 DNS 记录以指向新的 IP 地址。
以上便是centos7环境下配置LNMP全部步骤。