Ubuntu 编译安装 nginx

Ubuntu 22.04.1 LTS 编译安装 nginx-1.22.1

安装依赖

复制代码
sudo apt install libgd-dev

下载nginx

复制代码
wget http://nginx.org/download/nginx-1.22.1.tar.gz

解压nginx

复制代码
tar -zvxf nginx-1.22.1.tar.gz

编译安装

复制代码
cd nginx-1.22.1

编译并指定安装位置,执行安装之后会创建指定文件夹/www/env/nginx

复制代码
./configure --prefix=/www/env/nginx \
--with-pcre \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_stub_status_module \
--with-http_auth_request_module \
--with-http_image_filter_module \
--with-http_slice_module \
--with-mail \
--with-threads \
--with-file-aio \
--with-stream \
--with-mail_ssl_module \
--with-stream_ssl_module 

问题1:

./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre= option. PCRE库

PCRE库支持正则表达式。如果我们在配置文件nginx.conf中使用了正则表达式,那么在编译Nginx时就必须把PCRE库编译进Nginx,因为Nginx的HTTP模块需要靠它来解析正则表达式。另外,pcre-devel是使用PCRE做二次开发时所需要的开发库,包括头文件等,这也是编译Nginx所必须使用的。可以这样安装:

sudo apt update sudo apt install libpcre3 libpcre3-dev 问题2:

./configure: error: SSL modules require the OpenSSL library. You can either do not enable the modules, or install the OpenSSL library into the system, or build the OpenSSL library statically from the source with nginx by using --with-openssl= option OpenSSL库

如果服务器不只是要支持HTTP,还需要在更安全的SSL协议上传输HTTP,那么需要拥有OpenSSL。另外,如果我们想使用MD5、SHA1等散列函数,那么也需要安装它。可以这样安装:

sudo apt-get install openssl libssl-dev 执行编译并安装

复制代码
make && make install

nginx常用命令 常用命令 nginx -s reload 修改配置后重新加载生效 nginx -s stop 快速停止nginx nginx -s start 启动nginx nginx -s quit 完整有序的停止nginx nginx -v 查看nginx的版本 nginx -V 查看版本和nginx的配置选项 nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确 nginx -s reopen 重新打开日志文件

相关推荐
若疆赤云online13 分钟前
Ubuntu Dockerfile jar运行安装中文字体
linux·ubuntu·jar
洛可可白16 分钟前
Ubuntu 上安装 Docker
linux·ubuntu·docker
AI+程序员在路上22 分钟前
Ubuntu 20虚拟机中实现与Windows主机的剪贴板共享
linux·ubuntu
kevin小新22 分钟前
虚拟机 Ubuntu22 系统中安装 VMwareTools 以及相关工具
linux
绍磊leo22 分钟前
ubuntu22.04无法同时有线+无线联网问题解决
linux·网络
网硕互联的小客服26 分钟前
服务器的IO性能怎么看?
linux·运维·服务器·安全
徐同保29 分钟前
Nginx不能转发带有websocket功能的项目解决方案
运维·websocket·nginx
生产队队长30 分钟前
Database:Linux环境中的Oracle修改密码
linux·数据库·oracle
CheungChunChiu31 分钟前
Linux 下 Realtek WiFi/BT 二合一模组详解
linux·ubuntu
k8s-open33 分钟前
解决“Argument list too long”错误:curl参数过长的优雅处理方案
linux·前端·chrome·ssh