Ubuntu 离线环境 [Nginx 安装配置 + 目录说明 + 常用功能 + 命令]

一、离线安装配置 Nginx
1. 前提准备
下载文件:
Nginx 源码包(官网 nginx.org,如 nginx-1.24.0.tar.gz)
依赖 deb 包(匹配 Ubuntu 版本,如 20.04:gcc、g++、make、libpcre3-dev、zlib1g-dev、libssl-dev、net-tools(可选))
上传路径:将文件传到服务器 /opt/nginx-offline 目录
2. 安装依赖(deb 包离线安装)
cd /opt/nginx-offline/deps
sudo dpkg -i --force-depends *.deb  # 跳过临时依赖报错,确保基础安装

3. 编译安装 Nginx
解压源码:
sudo tar -zxvf /opt/nginx-offline/nginx-1.24.0.tar.gz -C /opt/

配置编译参数:
cd /opt/nginx-1.24.0
sudo ./configure --prefix=/usr/local/nginx --with-http_ssl_module  # 启用SSL(按需)

编译安装:
sudo make && sudo make install

验证:
/usr/local/nginx/sbin/nginx -v  # 显示版本即成功


二、Nginx 目录及文件说明(默认路径:/usr/local/nginx)
sbin/:核心执行目录,含 nginx 二进制文件(命令入口)
conf/:配置文件目录
nginx.conf:主配置文件(全局、HTTP 服务、虚拟主机等)
mime.types:MIME 类型映射(如 .html 对应 text/html)
nginx.conf.default:默认配置模板(备份参考)
html/:静态文件目录
index.html:默认首页(访问服务器 IP 加载)
50x.html:错误页面(如 502 时显示)
logs/:日志目录(需确保权限)
access.log:访问日志(IP、请求时间、响应码等)
error.log:错误日志(配置 / 连接异常)
nginx.pid:主进程 ID 文件(停止 / 重启依赖)
proxy_temp/:反向代理临时目录(自动生成,存缓存)

三、Nginx 常用功能
1. 静态资源服务(部署前端页面)
配置(修改 /usr/local/nginx/conf/nginx.conf):
http {
  worker_processes 1;  # 建议设为 CPU 核心数(如 2)
  server {
    listen 80;  # 非root用户用 1024+ 端口(如 8080)
    server_name 192.168.1.100;  # 服务器实际IP
    root /usr/local/nginx/html/dist;  # 前端 dist 目录
    index index.html;
    # 解决 Vue history 模式刷新404
    location / {
      try_files $uri $uri/ /index.html;
    }
  }
}

生效:sudo /usr/local/nginx/sbin/nginx -s reload
2. 反向代理(对接后端服务)
配置示例(转发 80 端口到 8080 后端):
server {
  listen 80;
  server_name 192.168.1.100;
  location /api/ {
    proxy_pass http://127.0.0.1:8080/;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
  }
}

3. 端口转发(8081 转 8080)
server {
  listen 8081;  # 非root用户可用
  location / {
    proxy_pass http://127.0.0.1:8080;
  }
}

4. 日志切割(避免磁盘占满)
备份旧日志:sudo mv /usr/local/nginx/logs/access.log /usr/local/nginx/logs/access_20251110.log
生成新日志:sudo /usr/local/nginx/sbin/nginx -s reopen
删旧日志(可选):sudo find /usr/local/nginx/logs/ -name "access_*.log" -mtime +30 -delete

四、Nginx 常用命令
1. 服务管理
启动:
root 用户:/usr/local/nginx/sbin/nginx
非 root 用户:/usr/local/nginx/sbin/nginx(用 1024+ 端口)
停止:
快速停止:sudo /usr/local/nginx/sbin/nginx -s stop
优雅停止:sudo /usr/local/nginx/sbin/nginx -s quit
重载配置:sudo /usr/local/nginx/sbin/nginx -s reload
2. 状态与信息查看
查看进程:ps -ef | grep nginx | grep -v grep
查看版本:
简化:/usr/local/nginx/sbin/nginx -v
完整:/usr/local/nginx/sbin/nginx -V(含编译参数)
查看端口:sudo netstat -tuln | grep 80(替换为实际端口)
3. 配置与日志操作
检查配置:/usr/local/nginx/sbin/nginx -t(返回成功则正确)
实时日志:
访问日志:sudo tail -f /usr/local/nginx/logs/access.log
错误日志:sudo tail -f /usr/local/nginx/logs/error.log(按 Ctrl+C 退出)
历史日志:sudo tail -n 100 /usr/local/nginx/logs/error.log(最近 100 行)

五、注意事项
权限:sudo chown -R $USER:$USER /usr/local/nginx/($USER 替换为当前用户)
端口:1024 以下端口(80/443)需 root 权限,非 root 用 8080+ 端口
依赖:dpkg 报错时,从 Ubuntu 镜像 pool 目录补充 deb 包
自启:sudo echo "/usr/local/nginx/sbin/nginx" >> /etc/rc.local

相关推荐

发表评论

路人甲

网友评论(0)