上文简单介绍了一下nginx,本文说一下其实现.

官方示例

想要通过nginx实现反向代理,主要需要进行conf目录下nginx.conf文件的配置:

# nginx 需要使用http/https协议的
http {
    #反向代理服务  一个服务就是一个server
    server {
        # nginx监听的端口号  默认监听80端口
        listen       80;
        # server名称 业务逻辑名称
        server_name  localhost;

        # 反向代理实现  / 代表拦截所有请求
        location / {
            # root 转向到目录中 html  index 默认访问页面
            root   html;
            index  index.html index.htm;
        }
    }
}

我们主要设置的就是server{...},一个server代表一个服务,多个服务我们就要配置多个server.
上述代码可是实现一个简单的反向代理业务,拦截localhost:80的请求,转到html目录下的index.html页面,是一个nginx自带的欢迎页面.

实例1

根据项目,我进行了如下配置:

#配置图片服务器
    server{
        listen 80;
        server_name image.com;
        location / {
            #由于windows操作系统问题 所以需要/替换\
            root D:/SOFT/images;
        }
    }

这样就可以将项目中要访问hhtp://image.com的请求跳转至本地的D:/SOFT/images目录下去保存/获取图片.

实例2

上面的实例,只是再上传图片的反向代理,那我们如果整个项目的登录都需要反向代理要怎么做?---需要通过hosts文件

hosts文件

操作系统为了开发人员测试方便,可以通过hosts执行文件的域名与IP的映射关系.如果配置了hosts文件,则先走hosts之后执行全球DNS域名解析服务.

操作系统为开发者提供了一个hosts文件.该文件可以实现域名与IP地址的映射关系.但是由于只是测试时使用.所以该配置只对本机有效.

一般hosts文件的路径为:C:WindowsSystem32driversetchosts

hosts配置:
左侧写IP地址 右侧写域名 中间使用空格分隔
如:127.0.0.1 image.com

### nginx域名代理
例如:用户通过域名 http://manage.com:80的域名 要求访问http://localhost:8091的服务器.

hosts文件

hosts文件中添加127.0.0.1 manage.com

nginx.conf文件
#配置后台管理系统
    server {
        listen 80;
        server_name manage.com;

        location / {
            #root 代表文件目录
            #index 代表默认的访问页面
            #proxy_pass 代表发起url请求
            proxy_pass http://localhost:8091;
        }
    }

迈克丝
85 声望5 粉丝

一步一步学技术,踏踏实实涨经验,兴趣广泛,广交好友,希望大家多多指正/批评.


下一篇 »
服务器集群