通过Nginx搭建自建URL转发

2024-04-29 23:50   67   0  

通过Nginx搭建自建URL转发

更新时间:2024-02-06 09:36:42提交缺陷产品详情相关技术圈我的收藏

概述

本文主要介绍如何通过Nginx的转发功能来自行搭建URL转发服务器,实现域名转发功能。

配置前提

  1. 本文使用工具为 Nginx ,且确认 http_rewrite_module 是开启的,一般默认为开启状态。

  2. Nginx安装配置方法,安装包编译安装:

     

    #下载安装包 wget http://nginx.org/download/nginx-1.18.0.tar.gz #解压 tar -zxvf nginx-1.18.0.tar.gz cd nginx-1.18.0 ./configure --prefix=/usr/local/nginx #配置时更换为实际希望安装路径即可 make && make install #安装完后验证是否安装成功 cd /usr/local/nginx/sbin ./nginx -t  #出现如下内容为安装成功 nginx: the configuration file /usr/local/nginx//conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx//conf/nginx.conf test is successful

使用场景

根据使用场景不同,分为以下三个使用场景:

说明

url.dns-example.com为跳转前域名,www.aliyun.com为跳转后域名(配置时请更换为实际业务域名)

场景一:将url.dns-example.com完全转发到www.aliyun.com

例如,访问url:http://url.dns-example.com/a.txt 需要跳转到 http://www.aliyun.com/a.txt

配置过程:

  1. 配置nginx.conf文件,文件在安装文件时填写的路径位置,即--prefix=填入的路径。

  2. 修改server模块中的server_name和location /模块的内容:

  • 修改server_name标签为跳转前域名,实际配置请填入实际业务域名。

  • 在location / 模块下添加 return 302 http://www.aliyun.com$request_uri;(实际配置请填入实际业务域名)

    说明

    重定向目前分为301永久重定向,302临时重定向,若您网站不涉及搜索引擎技术,则选择302临时重定向即可。

    配置前:

    image

    配置后:

    22

    配置内容参考:

     

    server {          server_name url.dns-example.com; # url.dns-example.com改为跳转前的域名     location / {         return 302 http://www.aliyun.com$request_uri; # http://www.aliyun.com 改为跳转后域名     } }
  1. 重启服务

     

    cd /usr/local/nginx/sbin #实际操作时更换为安装时配置的路径 ./nginx -s reload
  2. 解析配置

    Nginx服务配置完毕后,需要将跳转前的域名解析指向到Nginx所在服务器IP上。即需要在域名的DNS服务商处添加一条url.dns-example.com(配置时更换为实际跳转前域名)的A记录指向到47.94.XX.XX配置时更换为实际Nginx所在服务器)。

  • 以云解析为例,详细步骤参考添加解析记录,大致步骤如下:

    • 登录云解析DNS产品控制台

    • 前往 域名解析 - 权威域名 - 单击需要配置解析的域名进入 解析设置 页面。

    • 单击 添加记录 ,进行如下解析配置。

      image..png

  1. 验证效果

     

    #在服务器上运行,域名请填写您实际业务域名。 curl -v http://url.dns-example.com/a.txt

    33

场景二:将url.dns-example.com完全转发到www.aliyun.com/b/

例如,访问http://url.dns-example.com/a.txt 需要跳转到 http://www.aliyun.com/b/a.txt

具体配置步骤参考场景一,nginx.conf配置内容参考:

 

server {          server_name url.dns-example.com; # url.dns-example.com改为跳转前的域名     location / {         return 302 http://www.aliyun.com/b$request_uri; # http://www.aliyun.com 改为跳转后域名     } }

场景三:将url.dns-example.com/xxx.xxx完全转发到http://www.aliyun.com

例如,访问http://url.dns-example.com/xxx.xxx需要跳转到http://www.aliyun.com

具体配置步骤参考场景一,nginx.conf配置内容参考:

 

server {          server_name url.dns-example.com; # url.dns-example.com改为跳转前的域名     location / {         return 302 http://www.aliyun.com; # http://www.aliyun.com 改为跳转后域名     } }


博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。