一、准备工作
安装依赖项
- gcc: 安装gcc环境
- pcre库: nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库,pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。
- zlib库: zlib提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在Centos上安装zlib库。
- OpenSSL: OpenSSL是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在Centos安装OpenSSL库。
yum install -y gcc-c++ yum install -y pcre-devel yum install -y zlib zlib-devel yum install -y openssl openssl-devel
- 下载
nginx
安装包 下载地址
这里下载的是nginx-1.20.1.tar.gz
安装包,并放到root
目录 在
/usr/local/
下创建nginx
文件夹cd /usr/local/ mkdir nginx cd /usr/local/
二、解压
将
nginx
安装包解压到 /usr/local/nginxtar -zxvf /root/nginx-1.20.1.tar.gz -C ./
解压完之后, /usr/local/nginx ⽬录中会出现⼀个
nginx-1.20.1
目录
三、编译安装
进入
nginx
目录,执行下面命令,编译安装cd /usr/local/nginx-1.20.1
可选自定义配置
(二选一)
1).默认配置./configure
2).自定义配置
./configure --prefix=/usr/local/nginx \ --sbin-path=/usr/local/nginx/sbin/nginx \ --conf-path=/usr/local/nginx/conf/nginx.conf \ --pid-path=/usr/local/nginx/logs/nginx.pid \ --lock-path=/usr/local/nginx/logs/nginx.lock \ --error-log-path=/usr/local/nginx/logs/error.log \ --http-log-path=/usr/local/nginx/logs/access.log \ --with-http_gzip_static_module \ --http-client-body-temp-path=/usr/local/nginx/client_body_temp \ --http-proxy-temp-path=/usr/local/nginx/proxy_temp \ --http-fastcgi-temp-path=/usr/local/nginx/fastcgi_temp \ --http-uwsgi-temp-path=/usr/local/nginx/uwsgi_temp \ --http-scgi-temp-path=/usr/local/nginx/proxy_temp \ --with-http_ssl_module \ --with-http_v2_module
编译安装
make && make install
四、启动nginx
注意其配置⽂件位于
/usr/local/nginx/conf/nginx.conf
启动
nginx
服务/usr/local/nginx/sbin/nginx
访问 http://192.168.10.103/ 看到Welcome to nginx!
停⽌
nginx
服务/usr/local/nginx/sbin/nginx -s stop
修改了配置⽂件后想重新加载
nginx
/usr/local/nginx/sbin/nginx -s reload
重启服务
systemctl restart nginx.service
查看
nginx
状态systemctl status nginx.service
正常停止或关闭Nginx
nginx -s quit
设置环境变量
whereis nginx ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx nginx -v
五、nginx服务开机自启
先停止nginx,在设置自动重启,最后用systemctl restart nginx 启动nginx服务
在
/usr/lib/systemd/system
目录下添加nginx.service,内容如下:vim /usr/lib/systemd/system/nginx.service
注意看自己的配置文件的路径,根据自己情况修改
[Unit] Description=nginx web service Documentation=http://nginx.org/en/docs/ After=network.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s stop PrivateTmp=true [Install] WantedBy=default.target
添加完成后如果权限有问题需要进行权限设置
chmod 755 /usr/lib/systemd/system/nginx.service
使用系统命令来操作Nginx服务
systemctl start nginx #启动 systemctl stop nginx #停止 systemctl restart nginx #重启 systemctl reload nginx #重新加载配置文件 systemctl status nginx #查看nginx状态 systemctl enable nginx #开机启动
nginx升级
如果之前没有安装
nginx
的某个模块,重新进行编译./configure --with-http_v2_module
执行make编译
make
- 如果是首次安装Nginx,执行
make install
,如果是升级,执行make upgrade
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。