nginx tar离线安装 ubuntu22.04

一、下载 Nginx 主包

打开 https://nginx.org/packages/ubuntu/pool/nginx/n/nginx/,选择jammy版本、对应架构(amd64/arm64)的 deb 包;

二、卸载

复制代码
# 停止 Nginx 服务
sudo systemctl stop nginx

# 完全卸载 Nginx
sudo apt purge nginx nginx-common nginx-full

# 删除残留配置
sudo rm -rf /etc/nginx /var/log/nginx /var/lib/nginx /var/cache/nginx

# 清理依赖
sudo apt autoremove
sudo apt autoclean

三、apt-get安装依赖

复制代码
sudo apt-get install -y build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

1、内网离线下载依赖

复制代码
# 创建下载目录
mkdir -p ~/nginx-dependencies && cd ~/nginx-dependencies

# 下载所有依赖包(包括所有子依赖)
sudo apt-get update
sudo apt-get install -d build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

# 复制所有下载的deb包到当前目录
sudo cp /var/cache/apt/archives/*.deb ./







# 解压依赖包

tar -xzvf nginx-dependencies.tar.gz


# 进入依赖包目录

cd nginx-dependencies


# 安装所有包(按顺序安装,避免依赖问题)

sudo dpkg -i *.deb


# 如果出现依赖错误,强制修复

sudo apt-get install -f







# 检查gcc
gcc --version
# 输出:gcc (Ubuntu 11.4.0-1ubuntu1~22.04.2) 11.4.0

# 检查pcre
pcre-config --version
# 输出:8.39

# 检查zlib
zlib-config --version
# 输出:1.2.11

# 检查openssl
openssl version
# 输出:OpenSSL 3.0.2 15 Mar 2022

四、deb包安装

复制代码
sudo dpkg -i nginx_1.28.0-1~jammy_amd64.deb

# 检查版本(必须显示 1.28.0!)
nginx -v

# 检查 Stream 模块
nginx -V | grep stream



nginx -v


nginx version: nginx/1.28.0


 nginx -V | grep stream


nginx version: nginx/1.28.0
built by gcc 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) 
built with OpenSSL 3.0.2 15 Mar 2022
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/run/nginx.pid --lock-path=/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-http_v3_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-g -O2 -ffile-prefix-map=/home/builder/debuild/nginx-1.28.0/debian/debuild-base/nginx-1.28.0=. -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --with-ld-opt='-Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -flto=auto -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie'

五、tar安装

复制代码
# 安装依赖(直接用apt-get,无需下载rpm包!)

sudo apt-get update

sudo apt-get install -y build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev





./configure \
  --prefix=/usr/local/nginx \
  --sbin-path=/usr/local/nginx/sbin/nginx \
  --conf-path=/usr/local/nginx/conf/nginx.conf \
  --error-log-path=/usr/local/nginx/logs/error.log \
  --http-log-path=/usr/local/nginx/logs/access.log \
  --pid-path=/usr/local/nginx/logs/nginx.pid \
  --with-http_stub_status_module \
  --with-http_ssl_module \
  --with-http_gzip_static_module \
  --with-pcre \
  --with-stream  # 这个参数是启用stream模块的关键!




make
make install




/usr/local/nginx/sbin/nginx -V | grep stream

ls /usr/local/nginx/modules/ngx_stream_module.so



/usr/local/nginx/sbin/nginx -V | grep stream
nginx version: nginx/1.28.0
built by gcc 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04.2) 
built with OpenSSL 3.0.2 15 Mar 2022
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/usr/local/nginx/logs/error.log --http-log-path=/usr/local/nginx/logs/access.log --pid-path=/usr/local/nginx/logs/nginx.pid --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-pcre --with-stream

六、stream配置

复制代码
# 启用stream模块(四层代理)
stream {
    # 配置8080端口的TCP转发(目标:8081)
    server {
        listen 8080; # 监听8080端口的TCP流量
        proxy_pass 127.0.0.1:8081; # 转发到后端8081的TCP端口
        proxy_connect_timeout 180s;
        proxy_timeout 180s;
    }
}

代理配置

复制代码
server {
        listen       1111;
        server_name  192.192.3.20;
       charset utf-8;

        location / {
            root /usr/share/nginx/html;
          try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
        
        location /prod-api/ {
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://127.0.0.1:8080/;
        } 

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
相关推荐
shenghuiping200119 小时前
OPSWAT https enable 问题解决
nginx·https·ssl·443·opswat
peixiuhui19 小时前
EdgeGateway 快速开始手册-串口服务器
运维·人工智能·网关·边缘计算·工业控制·串口服务器·iotgateway
fiveym19 小时前
浪潮服务器BIOS性能优化全方案解析:多场景适配与配置详解
运维·服务器·性能优化
oMcLin19 小时前
如何在Ubuntu 22.04上通过调优Nginx和PHP‑FPM,提升高并发WordPress网站的负载均衡与缓存性能?
nginx·ubuntu·php
草莓熊Lotso19 小时前
Linux 2.6 内核 O(1) 调度队列深度解析:为什么它能实现常数时间调度?
linux·运维·服务器·数据结构·人工智能·哈希算法·散列表
宇钶宇夕19 小时前
CoDeSys入门实战一起学习(五):CoDeSys V3 车库门控制编程全解析系列(手册基础第二篇)
运维·自动化·软件工程
杨了个杨898219 小时前
XRDP 服务部署
运维·centos
以太浮标19 小时前
华为eNSP模拟器综合实验之- VLAN Mapping技术解析
运维·网络·华为·信息与通信
北京盛世宏博19 小时前
数据可追溯 + 加密传输:以太网温湿度变送器守护涉密档案安全
大数据·运维·人工智能·档案温湿度
米高梅狮子19 小时前
12. SELinux 加固 Linux 安全
linux·运维·安全