繁体   English   中英

使用DNS记录进行重定向

[英]Redirect using DNS records

因此,我为自己得到了一个不错的“短”域-abcd.st-我仅将其用作重定向域,而没有其他用途。 NIC.st网站比我想象的要简单。 它使您能够添加DNS记录,但仅此而已。 无法访问Web服务器或任何此类服务器。 它确实使您能够更改DNS服务器,但我不知道这是否有帮助(该领域的新手)。

现在,我将使用添加的内容创建类似于http://abcd.st/55e0chttp://abcd.st/45qs2s的微型URL,您就会明白

当用户访问这些微小的URL时,我需要将它们重定向到我的主要网站www.abcd.com/pages/view上的特定操作

使用DNS记录,我能够将所有流量盲目地重定向到我的主域-www.abcd.com-但我不确定如何

  1. 重定向到特定路径
  2. 假设无法将它们重定向到特定路径,那么有什么方法可以找到重定向域,然后在内部再次将它们转发给正确的操作?

编辑-这是我的DNS记录的样子

NAME                TTL        TYPE            ADDRESS

@                   1800       A               xxx.xxx.xxx.xxx

我正在使用CakePHP 3.0.10

感谢帮助!

您不能使用dns重定向具有特定路径的URL。

我建议改用php重定向脚本。 这样的事情。

的index.php

<?php
$site = "http://www.abcd.com/";
$path = "";
switch ($_GET["url"])
{
    case "45qs2s":
        $path = "pages/view/1";
        break;
    case "55e0c":
        $path = "pages/view/2";
        break;
}
http_redirect($site . $path);
?>

的.htaccess

RewriteEngine on 
RewriteRule ^index.php?url=(.*)$ $1

所以这就是我最后要做的

  1. 我的DNS记录指向我的主域。 因此,如果用户转到http://abcd.st ,他们将被重定向到http://www.abcd.com

  2. 我在CakePHP中配置了中央控制器, AppController检查了引用域。 如果引荐域具有“ abcd.st”,则它知道这是一个简短的URL重定向,然后将其推送到适当的控制器/操作

  3. 此外,我还使用$this->request->here提取了使用原始网址发送的所有参数,并将其传递给新的控制器/动作

希望这对以后的人有所帮助...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM