Author:think
安装Nginx
执行如下命令即可。
sudo rpm -Uvh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.18.0-2.el7.ngx.x86_64.rpm
若出现其他问题,可按照提示进行安装依赖,正常来说直接运行即可。
如果不想要该发行版本,则可以到http://nginx.org/packages/centos/7/x86_64/RPMS/中进行选择。
验证安装
通过命令systemctl status nginx
来查看服务状态时发现是已经安装上了
通过命令systemctl start nginx
来启动服务,如果没有任何提示则代表启动成功,如果出现以下提示则可以按照提示信息来进行排查
输入命令:systemctl status nginx
如图所示,日志中显示是80端口已被占用,因此我们有两种方法
- 查看并关闭占用80端口的服务
- 修改nginx的.conf文件来更改nginx所监听的端口
在这里我们选择第一种方法,输入命令:lsof -i:80
来查看是那一项服务占用了80端口
从图中我们可以看到是httpd服务占用了80端口(httpd是Apache在Linux中的服务名称),使用命令systemctl stop httpd
来关闭命令,再使用命令:systemctl start nginx
来启动nginx服务即可,如图所示没有任何提示则代表启动正常
使用命令:curl http://localhost
来测试Nginx服务是否部署完成,如下图所示则代表完成Nginx的部署
SSL配置
在conf.d
文件夹中新建一个ssl.conf
配置文件,并将以下内容填写至文件中:
server {
listen 443 ssl;
server_name www.test.com; #填写绑定证书的域名
ssl_certificate /ssl/cert.pem; # ssl文件夹下的.crt文件
ssl_certificate_key /ssl/cert.key; #ssl文件夹下的.key文件
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; #按照这个套件配置
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:80
}
}
测试配置文件
nginx -t
重新加载配置文件
nginx -s reload
通过该方式可配置通过
https
协议访问网站www.test.com,最终将请求转发至服务器内部监听80
端口的服务。
其中证书文件cert.pem
、cert.key
文件需要读者自行寻找。
写在最后
通过这种方式安装Nginx与编译安装相比,这种方式可将Nginx注册为服务,可以通过如下命令来管理Nginx。
-
启动Nginx
systemctl start nginx
-
停止Nginx
systemctl stop nginx
-
重启Nginx
systemctl restart nginx
-
将Nginx设置为开启自启
systemctl enable nginx
-
取消Nginx开机自启
systemctl disable nginx
而编译安装的方式需要进入Nginx的安装目录通过手动启动的方式进行服务的启动,较为麻烦。