在ubuntu服务器上设置子域


39

我在mysite.no-ip.org上有一台服务器。一切正常,我有一个博客和owncloud,可以通过编写mysite.no-ip.org/blog和mysite.no-ip.org/owncloud进行访问。现在,我想创建子域,以便可以编写blog.mysite.no-ip.org和owncloud.mysite.no-ip.org。

我已经研究了很多,最简单的教程就是我遵循的教程。 http://www.bcat.eu/blog/local-subdomains-under-ubuntu-linux-and-apache-2-4-tutorial/ 除非我不在服务器上,而是远程ssh进入服务器,所以如果我使用本地主机我无法确定这是否可行。这是我的第一个障碍,是否可以在没有服务器的情况下继续学习本教程?

我还发现了CNAME记录,这些记录(我不太确定)似乎是我想要做的事情。我使用no-ip.org,但我尝试遵循类似的方法,但是https://support.uberflip.com/entries/235780-4-4-5-how-to-setup-a并不清楚-cname-redirect#noip

有人有指针吗?这对我来说是非常可疑的,而且我不知道我离解决方案是否很远还是真的很接近(至少如果我可以尝试使用localhost,这将是检查我的Apache conf的第一步,但我什至无法做到)因为我ssh)。

无论如何,感谢您的提前帮助。任何帮助,欢迎链接。

Answers:


55

这实际上很容易。

首先,请确保您的DNS正常运行。您可以使用AAAAACNAME只要它指向您的IP地址记录。

在继续之前,请检查它是否正常工作!这将为您节省很多麻烦。您可以使用ping subdomain.mydomain.com或检查nslookup subdomain.mydomain.com。如果它指向您的IP地址,那就很好。

请注意,DNS更改最多可能需要24个小时。如果要立即继续,则可以编辑主机文件以手动添加子域。请注意,这仅适用于您当前的PC,因此您应在24小时后再次检查DNS,以确保其在其他地方也可以使用(请不要忘记在检查之前将更改还原到主机文件)。

去做这个:

sudo nano /etc/hosts

添加如下行(当然替换IP和主机名):

34.54.235.64 subdomain.mydomain.com

并保存文件。

现在更新您的Apache2配置。

只需添加此VirtualHost即可:

<VirtualHost *:80>
    ServerName subdomain.mydomain.com
    DocumentRoot /var/www/subdomain.mydomain.com
</VirtualHost>

现在创建/var/www/subdomain.mydomain.com并重新启动Apache2:

mkdir -p /var/www/subdomain.mydomain.com
sudo service apache2 restart

启用网站:

sudo a2ensite subdomain.mydomain.com

对要添加的每个子域重复此操作。


2
太棒了!非常感谢你。最后一点,但这可能是因为没有IP,我设法使其工作了,但是在注册子域时使用了地址blog-mysite.no-ip.org。我无法写blog.mysite.no-ip.org(消息:无效的主机名)...现在,这是因为no-ip希望我付款还是做错了什么吗?
user1983400 2014年

我不知道no-ip是否允许您创建子域。如果他们这样做,则可能需要24小时才能生效,就像我在回答中所说的那样。明天再尝试到达。另外,我看到您blog-mysite先使用,然后使用blog.mysite。这是不一样的,因此,如果选择第一个,则必须使用该名称。在这种情况下,请不要忘记更新您的Apache2配置。
Louis Matthijssen 2014年

嘿,对不起,这就是我的意思。No-ip只允许我创建一个带有破折号而不是句点的子域。这个无IP地址限制了我的免费帐户吗?应该有理由您不能这样做,对吗?
user1983400 2014年

我认同。我不使用无IP。如果您真的想知道,请联系他们的支持。您也可以购买自己的域名(例如mydomain.com)。这样,您将完全控制DNS,并且可以添加所需的任意多个子域。它不是那么昂贵,只需确保您不订购带有它的主机(这会使它变得昂贵)。价格通常是每年,我认为您可以获得一个大约10 $ /年的域名。
Louis Matthijssen 2014年

我回滚了最后一次编辑,因为不需要将所有权更改为文档根目录上的apache用户,甚至可能存在安全隐患。足以授予对该目录的读取访问权限。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.