找不到子域时如何使网站重定向到页面[重复]

Posted

技术标签:

【中文标题】找不到子域时如何使网站重定向到页面[重复]【英文标题】:How to make website to redirect to a page when subdomain not founds [duplicate] 【发布时间】:2014-01-14 07:35:27 【问题描述】:

我的网站存在一个问题,当我尝试使用以下域时:abc.domain.com 注册子域 abc 时,一切正常。但是,当我在未注册子域 xyz 时键入 xyz.domain.com 时,浏览器显示找不到页面,但我想将其重定向到未找到子域的自定义错误文件。

【问题讨论】:

查看这篇文章:***.com/questions/15802257/… 您需要澄清问题出在哪里,例如:您是否有通配符 dns - 对 xyz.domain.com 的请求是否到达您的服务器? 我有通配符服务器,但是未注册域的请求没有到达服务器。 【参考方案1】:

设置一个默认虚拟主机(在 apache 中,它是 第一个),并让您的所有其他虚拟主机(具有注册主机名的虚拟主机)位于默认虚拟主机之后。然后在默认的vhost中,添加:

ErrorDocument 404 /subdomain-not-found-error.php

RewriteEngine On
RewriteRule ^ - [L,R=404]

因此,对存在的子域的任何请求都将由该虚拟主机处理,但对不存在的子域的请求将被发送到默认虚拟主机,该虚拟主机将始终返回带有 404 错误的 /subdomain-not-found-error.php 文件.

【讨论】:

以上是关于找不到子域时如何使网站重定向到页面[重复]的主要内容,如果未能解决你的问题,请参考以下文章

子域/子文件夹重定向冲突

.htaccess 如何仅将子域/文件夹重定向到子域

如何使用 Amazon Route 53 将子域重定向到特定页面?

网站 web.config > 是不是可以将不正确的子域重定向到某个页面?

当查询找不到用户时,为啥页面没有重定向?

将所有通配符子域重定向到根域