一、下载nginx稳定版
wget http://nginx.org/download/nginx-${version}.tar.gz
二、解压–编译–安装
解压
tar -zxvf nginx-1.16.1.tar.gz
进入解压目录
cd nginx-1.16.1/
依赖库安装
1、安装gcc环境
编译时依赖gcc环境
yum -y install gcc gcc-c++ autoconf automake make
2、安装 pcre
提供nginx支持重写功能
yum -y install pcre pcre-devel
3、安装zlib
zlib 库提供了很多压缩和解压缩的方式,nginx 使用 zlib 对 http 包内容进行 gzip 压缩
yum -y install zlib zlib-devel make libtool
4、安装openssl
安全套接字层密码库,用于通信加密
yum -y install openssl openssl-devel
5、编译
# 检查平台安装环境
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
参数说明:
–prefix=/usr/local/nginx #编译安装目录
–user=nginx #所属用户nginx
–group=nginx #所属组nginx
–with-http_stub_status_module #该模块提供nginx的基本状态信息
–with-http_ssl_module # 支持HTTPS
6、安装
make && make install
补充查看编辑参数
# 查看编译参数
./configure --help | more
三、开放访问端口80(可自定义)
# 不同centos 系统指令有差别
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
四、nginx服务的启动操作
启动
cd /usr/local/nginx/sbin # 默认配置文件启动
./nginx
# 指定配置文件启动
./nginx -c /usr/local/nginx/conf/nginx.conf
停止
cd /usr/local/nginx/sbin
# 停止指令
./nginx -s stop
五、开机启动nginx
编辑文件/etc/rc.d/rc.local在后面添加内容
vi /etc/rc.d/rc.local
/usr/local/nginx/sbin/nginx
ll查看下rc.local文件,如果不是绿色表示没有执行权限,则执行指令
chmod +x /etc/rc.d/rc.local
六、补充
查看帮助信息
cd /usr/local/nginx/sbin ./ngxin -h
查看安装时配置
cd /usr/local/nginx/sbin ./nginx -V
检查配置文件是否正确
cd /usr/local/nginx/sbin ./nginx -t
直接使用nginx指令,提示未找到命令
解决办法:
编辑/etc/profile文件vi /etc/profile在末尾处添加
PATH=$PATH:/usr/local/nginx/sbin
export PATH
执行source /etc/profile指令配置
一般把配置放在/etc/nginx下面
1. 新建文件夹(用来存放nginx自定义配置文件)
mkdir -p /etc/nginx/conf.d
2. 在nginx的配置文件(默认/usr/local/nginx/conf/nginx.conf)中加入
include /etc/nginx/conf.d/*.conf;
3. 修改完成记得
nginx -s reload
nginx配置服务
目前nginx都是通过命令执行的,在nginx运行过程中,需要nginx作为系统的服务运行。以systemctl命令运行服务
配置服务文件
vi /lib/systemd/system/nginx.service
配置信息
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
创建服务
systemctl enable nginx.service