23、nginx部署前后端分离项目

本文详述了如何在Windows系统中安装并配置Nginx,包括启动服务、设置监听端口、配置文件示例,以及如何通过代理转发到后端API和auth模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文是在windows上安装的nginx

1、进入的nginx目录,启动nginx

start nginx.exe

2、配置nginx.conf

server {
        listen  80;
        server_name  localhost;
		root C://dist; #前端打包后的路径
		index index.html index.htm;
      location ^~ /api/{
            proxy_pass http://127.0.0.1:7001; #后端地址
            proxy_send_timeout 1800;
            proxy_read_timeout 1800;
            proxy_connect_timeout 1800;
            client_max_body_size 2048m;
            proxy_http_version 1.1;  
            proxy_set_header Upgrade $http_upgrade;  
            proxy_set_header Connection "Upgrade"; 
            proxy_set_header  Host              $http_host;   # required for docker client's sake
            proxy_set_header  X-Real-IP         $remote_addr; # pass on real client's IP
            proxy_set_header  X-Forwarded-For   $proxy_add_x_forwarded_for;
            proxy_set_header  X-Forwarded-Proto $scheme;
        }
        location ^~ /auth/{
            proxy_pass http://127.0.0.1:7001;
            proxy_send_timeout 1800;
            proxy_read_timeout 1800;
            proxy_connect_timeout 1800;
            client_max_body_size 2048m;
            proxy_http_version 1.1;  
            proxy_set_header Upgrade $http_upgrade;  
            proxy_set_header Connection "Upgrade"; 
            proxy_set_header  Host              $http_host;   # required for docker client's sake
            proxy_set_header  X-Real-IP         $remote_addr; # pass on real client's IP
            proxy_set_header  X-Forwarded-For   $proxy_add_x_forwarded_for;
            proxy_set_header  X-Forwarded-Proto $scheme;
        }
    }

 3、重新载入配置

nginx -s reload

 

<think>好的,用户想在Windows上使用Nginx部署前后端分离项目,我需要一步步指导他们。首先,我得确认用户的前后端项目类型,比如Vue前端和Django后端,这在之前的引用中有提到。接下来,需要从安装Nginx开始,说明如何下载和启动服务。然后,配置前端和后端的部分,要分别处理静态文件和代理API请求。需要提醒用户修改配置文件,设置root目录和proxy_pass。可能还要提到跨域问题,不过通过Nginx反向代理应该能解决。另外,HTTPS配置如果有需要的话,用户可能需要申请证书,但暂时先不深入。还要注意路径中的斜杠方向,Windows是反斜杠,但Nginx配置里应该用正斜杠。启动和重载配置的命令也要写清楚,比如nginx -s reload。最后,常见问题比如端口冲突或配置错误,需要给出检查方法。整个过程要保持步骤清晰,避免技术术语过多,让用户容易跟随操作。</think>### Windows上使用Nginx部署前后端分离项目教程 #### 一、环境准备 1. **下载Nginx** 访问[nginx官方下载页](https://nginx.org/en/download.html),选择`nginx/Windows-xxx`版本,解压到任意目录(如`D:\nginx`) 2. **项目文件准备** - 前端项目:将Vue打包后的静态文件(`dist`目录)放置到指定路径,如`D:\projects\frontend` - 后端项目:确保Django服务已启动(如运行在`http://localhost:8000`) #### 二、Nginx基础配置 1. **配置文件路径** 打开`conf/nginx.conf`,主要修改`server`块: ```nginx server { listen 80; server_name localhost; # 前端配置 location / { root D:/projects/frontend/dist; index index.html; try_files $uri $uri/ /index.html; } # 后端API代理 location /api/ { proxy_pass http://localhost:8000/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` *注意:Windows路径需使用正斜杠`/`,代理地址结尾的`/`可消除路径前缀[^2]* 2. **重要参数说明** - `try_files`:解决Vue路由刷新404问题 - `proxy_set_header`:传递客户端真实IP给后端 #### 三、服务管理 1. **启动Nginx** ```cmd cd D:\nginx start nginx ``` 2. **重载配置** ```cmd nginx -s reload ``` 3. **停止服务** ```cmd nginx -s quit ``` #### 四、HTTPS配置(可选) 1. 在`server`块添加: ```nginx listen 443 ssl; ssl_certificate cert/server.crt; ssl_certificate_key cert/server.key; ``` #### 五、常见问题排查 1. **端口冲突**:通过`netstat -ano | findstr :80`检查占用进程 2. **路径错误**:查看`logs/error.log`中的文件访问日志 3. **代理失败**:确认后端服务是否运行,测试`curl http://localhost:8000/api/test`
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值