问题描述
我的服务器位于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)。
无论如何,感谢您的事先帮助。任何帮助,欢迎链接。
最佳回答
这实际上很容易。
首先,请确保您的DNS正常运行。您可以使用A
,AAAA
或CNAME
记录,只要它指向您的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
对要添加的每个子域重复此操作。