源码需安装依赖库:gcc环境、pcre、zlib、openssl
gcc
:nginx 编译时依赖 gcc 环境pcre
:nginx 支持重写功能zlib
:zlib 库提供了很多压缩和解压缩的方式,nginx 使用 zlib 对 http 包内容进行 gzip 压缩openssl
: 安全套接字层密码库,用于通信加密,如不需要https访问,可不安装
安装编译工具及库文件
yum -y install make zlib zlib-devel gcc-c++ libtool pcre-devel openssl openssl-devel
- 源码下载包地址:https://nginx.org/en/download.html
解压
tar -zvxf nginx-1.20.2.tar.gz
进入安装包目录
cd nginx-1.20.2
检查平台环境,编译、安装
./confiure #检查平台环境 make #编译 make install #安装
检查版本型号
/usr/local/nginx/sbin/nginx -v
启动nginx
/usr/local/nginx/sbin/nginx
其他命令
/usr/local/nginx/sbin/nginx -s reload # 重新载入配置文件 /usr/local/nginx/sbin/nginx -s reopen # 重启 Nginx /usr/local/nginx/sbin/nginx -s stop # 停止 Nginx
遇到的问题:
部署的路径没有权限访问
切换至root用户或
非Root用户启动
增加权限
chmod 755 nginx chmod u+s nginx
修改配置
vi /usr/local/nginx/conf/nginx.conf
user nobody; //取消注释 error_log /home/user/ nginx /log/error.log; pid /home/user/nginx /nginx.pid;
PS:在 linux 下,只有以 root 启动的进程才能监听小于 1024 的端口。nginx 如果设置了监听 80 或 443 端口,则一定得以 root 帐号启动。如果只是测试,则可将端口设成 8080 之类大于 1024 的端口。