Nginx搭建前端本地预览环境的完整步骤教学

 更新时间:2025年09月30日 10:27:18   作者:llq_350  
这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下

很多前端同学平时只接触 npm run dev 的开发模式。但在一些场景下,我们需要用 Nginx 来本地模拟部署环境,比如:

  • 验证 打包后的静态资源能否正常运行
  • 处理 单页面应用(SPA)路由刷新 404 问题
  • 本地做 缓存策略测试(比如静态资源 30 天缓存)。
  • 和后端或移动端联调时,模拟 接近生产的访问方式

下面我们来一步步看怎么在本地用 Nginx 来托管前端项目。

项目目录结构

.
├── logs              # 存放 Nginx 访问日志和错误日志
│   ├── access.log
│   └── error.log
├── nginx.conf        # Nginx 配置文件
├── nginx.sh          # Nginx 启动/停止/重载脚本
├── package.json      # npm 脚本配置
└── utils.sh          # (可选)工具脚本

这样整理后,前端项目和本地 Nginx 部署逻辑绑定在一起,不需要频繁写长命令。

核心配置文件:nginx.conf

worker_processes 1;       # 启动的 worker 数量

events {
    worker_connections 1024;  # 每个 worker 最大连接数
}

http {
    include /opt/homebrew/etc/nginx/mime.types;   # 识别常见文件类型
    default_type application/octet-stream;

    sendfile on;              # 高效传输文件
    keepalive_timeout 65;     # 长连接超时时间

    # 日志文件路径
    access_log /Users/luoluqi/Desktop/ngnix-server/logs/access.log;
    error_log  /Users/luoluqi/Desktop/ngnix-server/logs/error.log warn;

    server {
        listen 8080;                               # 监听端口
        server_name localhost;                     # 本地访问域名

        root /Users/luoluqi/Desktop/blockify-ui/docs-dist; # 前端打包目录
        index index.html;

        # 单页面应用路由处理
        location / {
            try_files $uri $uri/ /index.html;
        }

        # 静态资源缓存
        location ~* .(js|css|png|jpg|jpeg|gif|svg|ico|woff2?|ttf|eot)$ {
            expires 30d;
            add_header Cache-Control "public";
        }

        # 禁止访问隐藏文件
        location ~ /. {
            deny all;
        }
    }
}

配置要点:

  • root:指定前端打包产物目录。
  • try_files:保证 SPA 项目在刷新时不会 404,而是回退到 index.html
  • 静态资源缓存:让 JS/CSS 等资源缓存 30 天,更接近生产环境。
  • 隐藏文件保护:禁止访问 .git.env 等敏感文件。

脚本化操作:nginx.sh

#!/bin/bash
BASE_DIR=$(cd "$(dirname "$0")"; pwd)
NGINX_CONF="$BASE_DIR/nginx.conf"

case "$1" in
  start)
    echo "Starting Nginx..."
    nginx -c "$NGINX_CONF"
    ;;
  reload)
    echo "Reloading Nginx configuration..."
    nginx -s reload
    ;;
  stop)
    echo "Stopping Nginx..."
    nginx -s stop
    ;;
  *)
    echo "Usage: ./nginx.sh {start|reload|stop}"
    exit 1
    ;;
esac

这样就不用每次手动敲 nginx -cnginx -s reload,直接 ./nginx.sh start 即可。

npm 脚本集成

package.json 里增加:

"scripts": {
  "nginx:start": "./nginx.sh start",
  "nginx:reload": "./nginx.sh reload",
  "nginx:stop": "./nginx.sh stop"
}

这样就可以用熟悉的 npm 命令来操作:

npm run nginx:start
npm run nginx:reload
npm run nginx:stop

总结:对前端的意义

  • 快速验证打包产物:不用每次都等后端部署。
  • 模拟生产环境:测试缓存策略、路由、错误日志。
  • 更专业的本地调试:和移动端、后端联调时避免跨域或开发环境差异。
  • 一键化操作:脚本化 + npm 集成,让前端工程师也能轻松用上 Nginx。

建议:在团队中可以把这套配置放到前端仓库里(例如 nginx/ 文件夹),大家拉代码后就能直接启动,减少环境差异。

到此这篇关于Nginx搭建前端本地预览环境的完整步骤教学的文章就介绍到这了,更多相关Nginx搭建前端本地预览环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Linux中Nginx反向代理如何实现不同路径访问不同的页面

    Linux中Nginx反向代理如何实现不同路径访问不同的页面

    这篇文章主要介绍了Linux中Nginx反向代理如何实现不同路径访问不同的页面方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Nginx在Windows下的安装及环境配置(将nginx作为服务运行)

    Nginx在Windows下的安装及环境配置(将nginx作为服务运行)

    这篇文章主要介绍了Nginx在Windows下的安装及环境配置,主要是将nginx作为服务运行,需要的朋友可以参考下
    2018-11-11
  • nginx配置二级域名的示例代码

    nginx配置二级域名的示例代码

    这篇文章主要介绍了nginx配置二级域名的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Nginx 请求压缩的实现(动态压缩,静态压缩)

    Nginx 请求压缩的实现(动态压缩,静态压缩)

    本文主要介绍了Nginx 请求压缩的实现(动态压缩,静态压缩),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Nginx中autoindex的具体使用

    Nginx中autoindex的具体使用

    autoindex是Nginx配置的一个指令,它可以控制Nginx是否允许在浏览器中显示一个目录的内容,本文主要介绍了Nginx中autoindex的具体使用,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • 详解nginx upstream 配置和作用

    详解nginx upstream 配置和作用

    这篇文章主要介绍了详解nginx upstream 配置和作用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • nginx做代理时如何修改querystring方法详解

    nginx做代理时如何修改querystring方法详解

    这篇文章主要介绍了nginx做代理时如何修改querystring的方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • nginx有哪些常规调优手段详解

    nginx有哪些常规调优手段详解

    性能调优就是用更少的资源提供更好的服务,成本利益最大化,下面这篇文章主要给大家介绍了关于nginx有哪些常规调优手段的相关资料,需要的朋友可以参考下
    2023-01-01
  • Nginx正反向代理与正则表达式详解

    Nginx正反向代理与正则表达式详解

    Nginx作为一款高性能的开源Web服务器和反向代理工具,凭借其轻量级、高并发处理能力和灵活的模块化设计,已成为现代Web架构的基石,这篇文章主要介绍了Nginx正反向代理与正则表达式详解,需要的朋友可以参考下
    2025-05-05
  • Nginx配置SSL证书的方法步骤

    Nginx配置SSL证书的方法步骤

    本文主要介绍了Nginx配置SSL证书,成功配置SSL证书后,您将能够通过HTTPS加密通道安全访问Nginx服务器,感兴趣的可以了解一下
    2024-02-02

最新评论