一.centos8 64位安装 运行 设置开机自启动 nginx服务
1、安装gcc
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境。安装指令如下
yum install gcc-c++
2、安装PCRE pcre-devel
Nginx的Rewrite模块和HTTP核心模块会使用到PCRE正则表达式语法。这里需要安装两个安装包pcre和pcre-devel。第一个安装包提供编译版本的库,而第二个提供开发阶段的头文件和编译项目的源代码。安装指令如下:
yum install -y pcre pcre-devel
3、安装zlib
zlib库提供了开发人员的压缩算法,在Nginx的各种模块中需要使用gzip压缩。安装指令如下:
yum install -y zlib zlib-devel
4、安装Open SSL
nginx不仅支持 http协议,还支持 https(即在 ssl 协议上传输 http),如果使用了 https,需要安装 OpenSSL 库。安装指令如下:
yum install -y openssl openssl-devel
2、下载并解压nginx压缩包
在这里可以去nginx官网下载->nginx官网,也可以直接使用wget命令下载,指令如下所示(请根据自己的需求进行下载):
wget http://nginx.org/download/nginx-1.17.6.tar.gz
将下载的压缩包进行解压并移动(注意不要将解压后的文件名改为nginx),指令如下所示(请根据自己的位置进行修改):
tar -zxvf nginx-1.17.6.tar.gz
mv nginx-1.17.6 /usr/local
由于nginx默认配置的是 80 端口,所以大家请先确保 80 端口没有被占用(netstat -nlp |grep :80)
可以看到LISTEN就是正在监听。否则需要我们之间修改端口。
3、配置nginx
注意当前我所在的目录,在解压后的nginx-1.17.6中,执行 ./configure
使用默认配置
如果你在执行 ./configure 时报错,请先确保之前的环境都已安装,如果都安装了还报错,那么你就要考虑是不是你所安装的nginx版本与你的Linux版本不兼容问题。
4、执行编译并安装命令
make && make install
至此都没有报错的话,那么恭喜你,nginx已成功安装,返回上一级目录,就会发现多了nginx目录,接下来,启动nginx
5、启动nginx
进入安装nginx的目录中启动
cd /usr/local/nginx/sbin/
./nginx
由于我已经启动过了,再启动就会显示端口被占用
6、验证
在浏览器中输入服务器的公网ip后会进入
如果没有进入的话进行一下操作
7、关闭防火墙
“` # service iptables stop“
可能会报错Failed to stop iptables.service: Unit iptables.service not loaded.
,
就是需要yum下载iptables
yum install iptables-services
实际上,centos7后是使用的基于iptable的systemctl stop firewalld
然后再次关闭防火墙
8、配置入口规则
然后
接下来
报存
9、 再次访问ip
如果还是不行的话,
reboot
重启一下服务器
收工!!!
撒花!!!!
10、配置开机自启动
**一、在系统服务目录里创建nginx.service文件 **
vim /lib/systemd/system/nginx.service
nginx.service内容如下:
[Unit]
#描述服务
Description=nginx
#描述服务类别
After=network.target
#服务运行参数的设置,注意【Service】的启动、重启、停止命令都要用绝对路径
[Service]
#后台运行的形式
Type=forking
#服务具体运行的命令
ExecStart=/usr/local/nginx/sbin/nginx
#重启命令
ExecReload=/usr/local/nginx/sbin/nginx -s reload
#停止命令
ExecStop=/usr/local/nginx/sbin/nginx -s quit
#表示给服务分配独立的临时空间
PrivateTmp=true
#运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
[Install]
WantedBy=multi-user.target
配置的时候注意自己的地址是否需要修改
11 、设置开机启动 systemctl enable nginx.service
nginx其他命令:
systemctl start nginx.service (启动nginx服务)
systemctl stop nginx.service (停止nginx服务)
systemctl enable nginx.service (设置开机自启动)
systemctl disable nginx.service (停止开机自启动)
systemctl status nginx.service (查看服务当前状态)
systemctl restart nginx.service (重新启动服务)
systemctl list-units –type=service (查看所有已启动的服务)
完结!!!
如有错误请指正!!!!