美文网首页
如何用Nginx解决前端跨域问题?

如何用Nginx解决前端跨域问题?

作者: 泪滴在琴上 | 来源:发表于2020-12-30 17:07 被阅读0次

例如我们在开发一个Vue应用。

原先:

调试页面是:http://192.168.1.100:8080/

请求的接口是:http://ni.hao.sao/api/get/info

步骤一:

请求的接口是:http://192.168.1.100:8080/api/get/info

PS:这样就解决了跨域问题。

步骤二:

安装好Nginx后,去到/usr/local/etc/nginx/目录(这是Mac的),修改nginx.conf文件。

步骤三:

把默认的server配置注释掉。

在下面增加:

server{
        listen 8888;
        server_name  192.168.1.100;
 
        location /{
            proxy_pass http://192.168.1.100:8080;
        }
 
        location /api{
            proxy_pass http://ni.hao.sao/api;
        }
    }

保存后,启动Nginx。

PS:并不需要太了解Nginx的配置,很简单的。

步骤四:

访问:http://192.168.1.100:8888/

搞定。

PS:注意访问的端口是‘8888’,有其他域的地址继续加location就行了。
错误示范

我一开始不太懂Nginx的配置,以为可以如下配置。

server{
        listen 8080;
        server_name  192.168.1.100;
 
        location /api{
            proxy_pass http://ni.hao.sao/api;
        }
    }

之所以这么写,是我认为这样可以让Nginx帮我监听8080的请求,然后只转发匹配的请求。我没有意识到的是Nginx这么写后,是需要占用8080端口的。

既然需要占用端口,那也就不能再被其他相同协议的进程占用,就导致开发的页面无法以8080端口启用。经同事提点,才想起这事情,换下思路,就有了最上面的方法。

相关文章

  • 用nginx的反向代理机制解决前端跨域问题

    用nginx的反向代理机制解决前端跨域问题 Vue做前台,后台走接口就会遇到跨域问题。这里Nginx做反向代理是一...

  • [mark]九种跨域方式实现原理

    前端如何使用proxyTable和nginx解决跨域问题 前言 前后端数据交互经常会碰到请求跨域,什么是跨域,以及...

  • 浏览器跨域的那些事

    整理中 目标: 了解跨域 解决跨域 服务器配置跨域(java, nginx) 前端调试时配置解决跨域 一、什么是跨...

  • nginx解决前端跨越详细方法

    nginx解决前端跨域 1、安装好nginx后,进入/usr/local/etc/nginx/nginx.conf...

  • 如何用Nginx解决前端跨域问题?

    例如我们在开发一个Vue应用。 原先: 调试页面是:http://192.168.1.100:8080/[http...

  • 跨域问题,解决方案

    跨域问题,解决方案 - Nginx反向代理跨域问题,解决方案 - CORS方案此为原作者的链接:跨域问题,解决之道

  • Nginx跨域

    Nginx解决跨域问题(CORS) CORS(Cross-Origin Resource Sharing) 跨域资...

  • nginx代理转发配置

    遇到前端跨域问题,不想改代码,解决方案有node.js或nginx,因工作中nginx接触较多,所以选择nginx...

  • 跨域访问

    参考文献:jsonp解决跨域问题 . cors解决跨域问题 . (java+前端小白)第一次碰到跨域问题,小伙伴们...

  • Day 100/100 Vue3.0 & Vue-cli4.5

    写在前端的话 除了后端解决跨域问题前端可以解决吗?答案是可以~~~ (一)问题 遇到了跨域问题,本地的URL是 h...

网友评论

      本文标题:如何用Nginx解决前端跨域问题?

      本文链接:https://www.haomeiwen.com/subject/agihoktx.html