nginx 反向代理服务器配置基础问题?小弟是菜鸟,请大神赐教,感激不尽……

发布于 2022-09-03 12:40:56 字数 876 浏览 14 评论 0

公司有反向代理服务器,nginx.conf 配置文件,关键部分配置如下:

    server {
        listen       8077;
        server_name  localhost:9000;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location  /front/ {
            proxy_pass  http://127.0.0.1:9000/;
        }
        location  /services/ {
            proxy_pass  http://127.0.0.1:8080/services/;
        }

clipboard.png

问题1:请大神用菜鸟都能听懂的语音,解释箭头标注的四个地方是什么意思?
问题2:listen 默认端口是80,上面已经改为8077, 如果改为80,可以使用下面的链接访问实现反向代理(我想要的效果)

http://localhost/front/#/main/home     这种方法来访问
http://localhost/front/      测试服务器地址

但是,现在端口改为了8077,请问,上面两个URL怎样改写,才能达到和80端口同样的效果?

小弟是菜鸟,请大神赐教,感激不尽……

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

芸娘子的小脾气 2022-09-10 12:40:56

箭头1
监听本机 8077 端口
箭头二
没这种写法
箭头三
访问路径中有front,
箭头四
反向代理到本机9000端口,这个应该是php-fpm监听端口
如果需要改为8077
箭头二改为

server_name localhost;

浏览器打开http://localhost:8077/front/

つ低調成傷 2022-09-10 12:40:56

谈不上赐教,我也只能说个大概,具体的东西我也是很清楚.

  1. listen 8077 意思就是用户访问的端口如果是8077的话,就走这个配置(nginx监听8077端口)

  2. 如果nginx中只配置一个server域的话,则nginx是不会去进行server_name的匹配的。因为只有一个server域,也就是这有一个虚拟主机,那么肯定是发送到该nginx的所有请求均是要转发到这一个域的,即便做一次匹配也是没有用的。还不如干脆直接就省了。如果一个http域的server域有多个,nginx才会根据$hostname去匹配server_name进而把请求转发到匹配的server域中

  3. 接下来是路径匹配的规则如果路径是/front/的话就把请求转发(反向代理到)http://127.0.0.1:9000的服务,这样监听9000端口的服务就能接收到请求。

疑问:"/front/" 与 "/front"的区别我不知有什么区别,希望有高手解答

我觉得这个配置是坐前后端分离用得。把接口请求和前端请求分离开。

软甜啾 2022-09-10 12:40:56

这种问题还是去网上查查nginx的配置文件先看看吧,看不懂的再过来提问。

遥远的绿洲 2022-09-10 12:40:56

多创建server的配置文件立刻实现

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文