如何在本地主机上设置带有和不带有 www 前缀的子域/域

Posted

技术标签:

【中文标题】如何在本地主机上设置带有和不带有 www 前缀的子域/域【英文标题】:How to setup subdomain/domain with and without www prefix on localhost 【发布时间】:2012-11-06 05:49:40 【问题描述】:

我经历了很多这样的问题,但没有给我正确的答案。

我在 apache vhost 中有以下配置:

<VirtualHost *:80>
    DocumentRoot "D:/Web Server/xampp/htdocs/testsite/frontend/www"
    ServerName mydomain.com
    ServerAlias www.mydomain.com
</VirtualHost>


<VirtualHost *:80>
    DocumentRoot "D:/Web Server/xampp/htdocs/testsite/backend/www"
    ServerName admin.mydomain.com
    ServerAlias www.admin.mydomain.com
</VirtualHost>

AND 主机文件:

127.0.0.1               testsite.com
127.0.0.1               admin.testsite.com

我需要的是:

www.testsite.com 和 testsite.com 应该指向同一个东西

一样

www.admin.testsite.com 和 admin.testsite.com

这个配置有什么问题? 我是否需要为每个添加单独的记录,一个带有 www 而另一个不带 www ?

请帮我解决这个问题

提前致谢

【问题讨论】:

【参考方案1】:

您需要添加 www.您的域的版本到您的 etc 主机。

127.0.0.1               testsite.com www.testsite.com
127.0.0.1               admin.testsite.com www.admin.testsite.com

【讨论】:

我投了赞成票,但实际上是否允许一行中的多个条目(在 Windows 或其他操作系统上)?这对我来说实际上是一个新奇事物,我希望我早点知道。 :) 现在在 windows 中工作,单行有多个条目:),我只知道 @sakhunzai 谢谢!我稍后会试一试(现在不在我的 Windows 机器上)。仍然在这里使用 XP。你用什么口味的? @sakhunzai 好的,再次感谢。我想我很快就会知道这是否也适用于 XP。 :)【参考方案2】:

使用 CNAME 可以让您的 DNS 数据更易于管理。 CNAME 记录指向 A 记录。因此,如果您更改 A 记录的 IP 地址,则指向该记录的所有 CNAME 记录都会自动跟随 A 记录的新 IP。另一种解决方案是拥有多个 A 记录,但是您将有多个位置来更改 IP 地址,这会增加出错的机会。

CNAME 记录最流行的用途是提供对使用标准 www.domain.com 和 domain.com(不带 www)的 Web 服务器的访问。这通常是通过为指向短名称的 www 名称添加 CNAME 记录来完成的[同时为短名称(不带 www)创建 A 记录]。 示例:

您有一个域名为 mywebsite.nl 的网站。该域名连接到 A 记录,该记录将域名转换为适当的 IP 地址,f.i. 11.22.33.444.

您还拥有多个子域,例如 www.mywebsite.nl、ftp.mywebsite.nl、mail.mywebsite.nl 等,并且您希望这些子域指向您的主域名 mywebsite.nl。您无需为每个子域创建 A 记录并将其绑定到您的域的 IP 地址,而是创建一个别名,一个 CNAME 记录。见下表,如果您的 IP 地址发生变化,您只需编辑 1 个 A 记录,所有子域都会自动跟随,因为 de CNAMES 指向带有 A 记录的主域。

(Sub)domain
Type
Target
mywebsite.nl

A
11.22.33.444
www.mywebsite.nl

CNAME
mywebsite.nl
ftp.mywebsite.nl

CNAME
mywebsite.nl
mail.mywebsite.nl

CNAME
mywebsite.nl

【讨论】:

以上是关于如何在本地主机上设置带有和不带有 www 前缀的子域/域的主要内容,如果未能解决你的问题,请参考以下文章

带有引导程序 4 的模式未在本地主机上显示,来自 codepen.io 的代码

带有 Web 工具平台的 Eclipse Juno - 本地主机上的 HTTP 预览抛出 NoClassDefFoundError

本地主机上带有 Angular 的 NodeJS + Express:被 CORS 预检阻止

在本地主机上运行的 Vue 应用程序中使用带有 php 文件的 JavaScript fetch() - 相对 URL 问题

访问控制允许带有和不带有 www 的来源

本地主机上的 Websockets 通过 https:// 问题