简单配置nginx反向代理,实现跨域请求

简介: 简单配置nginx去做反向代理,实现跨域请求简单介绍nginx的nginx.conf最核心的配置,去做反向代理,实现跨域请求。更多详细配置,参考nginx官方文档先介绍几个nginx命令打开nginx.

简单配置nginx去做反向代理,实现跨域请求

简单介绍nginx的nginx.conf最核心的配置,去做反向代理,实现跨域请求。

更多详细配置,参考nginx官方文档

先介绍几个nginx命令

  1. 打开nginx.conf文件
    /usr/local/etc/nginx/nginx.conf
  2. 重新加载配置|重启|停止|退出 nginx
    nginx -s reload|reopen|stop|quit
  3. 打开nginx服务
    nginx

上code:配置nginx.conf的文件

以下是nginx.conf文件里的serve部分

server {
    # 配置服务地址
    listen       9000;
    server_name  localhost;
    
    # 访问根路径,返回前端静态资源页面
    location / {
        # 前端代码服务地址
        proxy_pass http://localhost:8000/;  #前端项目开发模式下,node开启的服务器,根路径下可打开index.html
    }
    
    # 最简单的API代理配置
    # 约定:所有不是根路径下的资源,都是api接口地址。则可代理如下
    location /* {
        # API 服务地址
        proxy_pass http://www.serverA.com;  #将真正的请求代理到API 服务地址,即真实的服务器地址,ajax的url为/user/1将会访问http://www.serverA.com/user/1
    }
    
    # 需要更改rewrite 请求路径的配置
    location /api/ {
        rewrite ^/api/(.*)$ /$1 break;   #所有对后端的请求加一个api前缀方便区分,真正访问的时候移除这个前缀
        # API Server
        proxy_pass http://www.serverA.com;  #将真正的请求代理到serverA,即真实的服务器地址,ajax的url为/api/user/1的请求将会访问http://www.serverA.com/user/1
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}
  • 配置好nginx.config后,做以下操作。
  1. 启动nginx服务。终端执行:nginx
  2. 前端项目,index.html同级目录起服务,监听8000端口。自然你可以通过http://localhost:8000访问到页面。但是同时,由于访问nginx服务http://localhost:9000的地址,被代理到了http://localhost:8000地址。所以访问http://localhost:9000,也可以访问到此index.html页面。
  3. 项目中,所有接口地址为/或者为http:localhost:9000/的都会被代理到http://www.serverA.com/*去访问。从而实现本地开发环境下跨域请求线上http://www.serverA.com的接口。例如ajax的url是/api/user/1,经过代理后发起的请求url是http://www.serverA.com/api/user/1,达到目的,且没有跨域

关于mac如何安装nginx,并启动nginx服务。可参考他人博客

目录
相关文章
|
1天前
|
缓存 前端开发 JavaScript
终极 Nginx 配置指南(全网最详细)
本文详细介绍了Nginx配置文件`nginx.conf`的基本结构及其优化方法。首先通过删除注释简化了原始配置,使其更易理解。接着,文章将`nginx.conf`分为全局块、events块和http块三部分进行详细解析,帮助读者更好地掌握其功能与配置。此外,还介绍了如何通过简单修改实现网站上线,并提供了Nginx的优化技巧,包括解决前端History模式下的404问题、配置反向代理、开启gzip压缩、设置维护页面、在同一IP上部署多个网站以及实现动静分离等。最后,附上了Nginx的基础命令,如安装、启动、重启和关闭等操作,方便读者实践应用。
121 76
终极 Nginx 配置指南(全网最详细)
|
6天前
|
JavaScript Java 应用服务中间件
|
13天前
|
应用服务中间件 nginx
一文搞定Nginx配置RTMP!
一文搞定Nginx配置RTMP!
49 3
|
13天前
|
Ubuntu 应用服务中间件 数据库
Nginx配置:阻止非国内IP地址访问的设置方法
此外,出于用户隐私和法律合规性的考虑,应慎重考虑阻止特定国家或地区IP地址的决策。在某些情况下,这可能被视为歧视性或违反当地法律。
31 2
|
28天前
|
Ubuntu 应用服务中间件 Linux
在Linux中,如何配置Web服务器(如Apache或Nginx)?
在Linux中,如何配置Web服务器(如Apache或Nginx)?
|
28天前
|
缓存 负载均衡 应用服务中间件
Nginx 代理管理器强势登场!轻松设置反向代理,为你的网络安全与高效护航,快来探索!
【8月更文挑战第23天】Nginx 代理管理器(NPM)是一款强大的工具,用于简化反向代理的设置流程。反向代理能隐藏后端服务器的真实IP,提升安全性,实现负载均衡与缓存等功能。用户需先安装Nginx 代理管理器,然后通过其Web界面添加代理主机,指定代理名称、协议类型、服务器地址及端口等信息。对于HTTPS协议,还需上传SSL证书/密钥。完成设置后,可通过浏览器测试反向代理是否正常工作。Nginx 代理管理器还支持高级特性,如负载均衡、缓存及访问控制等。
49 1
|
26天前
|
应用服务中间件 Linux PHP
【Azure 应用服务】App Service For Linux 环境中,如何修改 Nginx 配置中 server_name的默认值 example.com
【Azure 应用服务】App Service For Linux 环境中,如何修改 Nginx 配置中 server_name的默认值 example.com
|
26天前
|
应用服务中间件 Linux nginx
【Azure 应用服务】App Service For Container 配置Nginx,设置/home/site/wwwroot/目录为启动目录,并配置反向代理
【Azure 应用服务】App Service For Container 配置Nginx,设置/home/site/wwwroot/目录为启动目录,并配置反向代理
|
28天前
|
安全 应用服务中间件 网络安全
Nginx要怎么配置才算安全
Nginx要怎么配置才算安全
36 0
|
28天前
|
应用服务中间件 Linux 网络安全
在Linux中,如何配置Apache或Nginx Web服务器?
在Linux中,如何配置Apache或Nginx Web服务器?