下面是CentOS7下yum方式安装Nginx的实现步骤的完整攻略:
步骤1. 更新系统软件包首先需要更新系统软件包,以确保yum仓库中的软件包已经是最新版本。
sudo yum update
步骤2. 安装EPEL仓库
Nginx不是CentOS的默认软件包,需要添加EPEL(Extra Packages for Enterprise Linux)仓库以便于安装。在执行下面的命令前,确保已经安装了wget。
sudo yum install epel-release
步骤3. 安装Nginx
通过下面的yum命令安装Nginx:
sudo yum install nginx
安装成功后,Nginx默认是启动状态。可以使用systemctl命令控制Nginx的启动、停止和重启:
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx
步骤4. 配置Nginx
Nginx的全局配置文件路径为/etc/nginx/nginx.conf
。修改该文件,可以配置Nginx的全局参数,如工作进程数、日志路径等。此外还可以添加虚拟主机,配置Nginx的反向代理、负载均衡等功能。
例如,创建一个简单的虚拟主机,添加以下配置到/etc/nginx/conf.d/default.conf
文件中:
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.html;
}
上述配置表示监听80端口,将所有请求代理到/root网站目录下,并使用index.html
作为默认文档。
Nginx默认不支持PHP,需要先安装PHP-FPM(FastCGI Process Manager)。PHP-FPM是一个为Nginx提供FastCGI支持的工具。
sudo yum install php-fpm
安装成功后,修改/etc/nginx/conf.d/default.conf
文件,添加以下配置:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name;
include fastcgi_params;
}
上述配置表示在请求以.php
结尾的URL时,将请求通过FastCGI协议发送到本地9000端口的PHP-FPM服务处理。
Nginx支持HTTPS协议,以保障访问过程中的安全性。为了使用HTTPS,需要先获得一份SSL证书,可以通过ACME协议自动获取免费的SSL证书。
例如,使用Let’s Encrypt的ACME客户端certbot,执行以下命令安装:
sudo yum install certbot python2-certbot-nginx
安装成功后,执行以下命令获取SSL证书:
sudo certbot --nginx -d example.com
上述命令中,example.com
即为你的网站域名。Certbot会自动在/etc/nginx/conf.d
目录下生成配置文件,自动配置HTTPS并续期证书。
通过以上步骤,我们可以成功在CentOS7下使用yum方式安装Nginx,并配置一些常见的应用场景,如支持PHP和添加SSL证书。如果您需要更多的功能,可以参考Nginx官方文档,进行深入了解。