网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

如何通过Nginx反向代理和负载均衡提升网站性能和用户体验?

GG网络技术分享 2025-11-23 21:43 1


嘿嘿,你们知道吗?现在Zuo网站的人可多了我们得不停学新东西,不然怎么进大公司啊!就像别人说的,以前的Java技术现在还Neng用,可我们前端的技术geng新可快了。

什么叫Zuo平衡负担?

每次有人来访问网站, 我们dou要保证服务器里的每个电脑dou不太忙,这样就不会有电脑太累了不会出问题。每次刷新,我们dou去不同的电脑上找东西,这样就Zuo到了平衡负担,勇敢一点...。

怎么操作Nginx呢?

当进了这个文件夹,我们就Ke以动Nginx了。我来告诉你们一些超有用的命令,你们得多练练,一定要记住哦。

        
        server{
            listen 80;
            location/{ 
                proxy_pass http://.:;
            }
        }
        
    

Upstream模块来平衡负担

这事儿我得说道说道。 公司有hen多电脑, 它们组成了一堆电脑,当有人来访问网站时先来一个中间电脑,然后中间电脑再从这一堆电脑里找一个不太忙的,然后让访问就去那个电脑。

        
        server{
            listen 80;
            server_name chd.news.so.m.qss.test.so.com;
            auth_basic off;
            location/{ 
                proxy_pass http://.:;
                proxy_set_header Host $host;
                proxy_redirect off;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_connect_timeout 60;
                proxy_read_timeout 600;
                proxy_send_timeout 600;
            }
        }
        
    

每次改完Nginx的设置, 别忘了重启Nginx,这样才Neng生效哦。这样我们就Ke以通过chd.news.so.m.qss.test.so.com这个地址kankan开发环境了,不夸张地说...。

        
        //修改nginx.conf
        worker_processes 1;
        events{
            worker_connections 1024;
        }
        http{
            upstream firstdemo{
                server 39..;
                server 47..;
            }
            server{
                listen 8080;
                location/{ 
                    proxy_pass http://firstdemo;
                }
            }
        }
        
    

何必呢? 上面改的nginx.conf就是那个圈圈里的文件,Nginx的设置主要就是在这里改的。我们把这些复杂的东西简化了只用了不到20行代码。

Nginx反向代理和平衡负担的实现

当我们有一堆电脑, 而且每台电脑上的东西dou一样时Ru果我们直接从电脑访问这些电脑,是不行的,必须通过别的电脑才Neng访问。这就是反向代理。

简单Nginx会给你找一个不太忙的电脑去访问。

什么是反向代理?什么是平衡负担?

用户来访问网站时 先访问Nginx服务器,然后Nginx服务器再从电脑堆里找一个不太忙的电脑,把访问请求转到那个电脑。

Nginx配置

我懵了。 在我们Zuo前端的时候,通常不需要太多地修改Nginx。我们修改Nginx的设置,就是为了Zuo一些反向代理。

工作中的简单使用

我们学的东西要学到老,用到老啊!

        
        //安装nginx
        -进到homebrew官网, 然后复制命令,预安装需要的东西
        -brew install nginx 安装nginx
        -nginx -v 显示版本号
        进入nginx
        cd /usr/local/etc/nginx
        
    

下面是进入Nginx文件夹里的文件内容。

好了 今天先说这么多,前端的朋友们也要了解一些Nginx的用法,虽然不多, 没耳听。 但工作起来就够用了。那么先说说kankan什么是反向代理和平衡负担。

Nginx常用命令

切记... 我下面的演示就主要以Mac系统为主了Windows系统直接去Nginx官网下载安装就Ke以了。

        
        nginx: configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
        nginx:configuration file /usr/local/etc/nginx/nginx.conf test is successful
        
    

对于我们前端 正常工作当中,倒是不需要过多地修改Nginx。我们之所以修改Nginx的设置,就是为了Zuo一些反向代理,地道。。

不过 我们geng应该Zuo到的是当用户第一次访问到其中一台电脑后下次再访问时就直接访问那台电脑, 呵... 不用总换电脑了。这就发挥了ip_hash的威力。

另起炉灶。 下面给大家kankan, 我正常在公司时NginxZuo的反向代理配置,和咱们上面的差不多,只是加了一个server_name,用指定的域名去访问即可。

proxy_pass

Nginx反向代理主要通过proxy_pass来配置, 把你项目的开发机地 开搞。 址写到proxy_pass后面正常的格式为proxy_pass URL即可。

上面写的三个指令,我们直接通过代码来一一分析。

突然想起了deno项目发布的时候, 一个搞笑的issue,“求别geng新了老子学不动了”。虽然kan起来是一个玩笑的issue, 但却道出了前端们不得不表现出来的疲态,知识点越来越庞大,学习的内容越来越多,嚯...。

换位思考... 既然不到20行,那就把里面对应的内容统统解释一下吧,有个了解就好。

上面修改了nginx.conf之后别忘了Zui重要的一步重启Nginx,我是深有体会。。


提交需求或反馈

Demand feedback