1

可能重复:
获取 URL 子域的 PHP 函数

我正在寻找一种有效的方法来判断 URL 中是否存在子域。

域名将始终是固定的,例如 mydomin.com,但是如果未设置子域,我需要重定向。

我的一个想法是,如果有多个句点 (.),则会设置一个子域,但我不确定如何实现这一点。

非常感谢。

编辑:对不起,不太清楚。我没有当前的解决方案,但是查看其他帖子,我可以看到几个有关如何获取子域的示例,例如

array_shift(explode(".",$_SERVER['HTTP_HOST']));

但我不想要子域,只是为了检查一个是否存在。子域可以是任何东西。

4

2 回答 2

1

我宁愿使用 apache 重写引擎(或任何网络服务器重写过程):

# .htaccess 文件

RewriteCond %{HTTP_HOST} ^yourdomin\.com$
重写规则 (.*) http://sub.yourdomin.com/$1 [R=301,L]

于 2012-10-06T11:02:30.380 回答
1

您可以使用parse_url. 然后你把它分解为explode()

function hasSubdomain($url) {
    $parsed = parse_url($url);
    $exploded = explode('.', $parsed["host"]);
    return (count($exploded) > 2);
}

在谷歌上,你可以很容易地找到如何重定向某人。

于 2012-10-06T11:06:07.893 回答