nginx http 反向代理

传统的前端工程写出来了一堆 html、CSS、JavaScript 等等静态文件。

1、如何使用 nginx 去代理这些静态文件(本地开发)?比如在浏览器访问某个地址,加载指定的index.html

2、如何让 js 中调用的接口都通过 nginx 去调用?就是不在浏览器中直接调用这些接口,通过nginx去调用

图片描述

E:/nginx-FE 是整个工程的目录地址,index.html是我想指定的入口文件,这样写没有用,不知道哪里错了

阅读 5.2k
4 个回答

感谢邀请。

所有windows路径需要俩斜杠。试试看。

如E:// 之类。


不知道解决了没有,粘一下我这边的配置,希望有所帮助。

server

listen 8000;charset UTF-8;

web目录

location /umesdfront{
    proxy_set_header HOST $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Client-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    add_header 'Access-Control-Allow-Origin' '*';
    autoindex on;
    alias E:\\SVN\\umesdfront\\src;
    index index.html;
}

转发请求:

location /esmsrv{
    proxy_pass http://dev.wininstudy.org;
}

windows环境

server {
        listen       3008;
        server_name  localhost;

        location / {
            root   E:\path\to;  #html;
            index  index.html;
        }

        location /api {
            proxy_pass http://xx.com/cgi;
        }
    }

本地请求 http://localhost:3008/api/getList

被转发到 http://xx.com/cgi/getList

root指定的路径用E:/nginx这样的
有错误的话,看看error.log

路径中的E:/nginx 中的/n被格式化成回车了,换个目录,/后面不要有r t n之类的,会被格式化

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题