我在vps.net
有一个Ubuntu
LAMP
网站。
我有一个名为john
的目录,可通过mysite.com/john
访问,我希望它可以通过john.mysite.com
访问
我的网站根目录是/var/www
,这个目录在/var/www/john
我需要做些什么才能做到这一点?
在/etc/apache2/sites-available/john.mysite.com
创build一个新的站点文件
build立这样的网站是这样的:
<VirtualHost *:80> ServerName john.mysite.com DocumentRoot /var/www/john <Directory /var/www/john/> Order allow,deny Allow from all </Directory> </VirtualHost>
通过a2ensite john.mysite.com
启用该网站
重新加载apache以启用该网站: service apache2 restart
除了configurationApache之外,别忘了还有DNS部分:你需要john.mysite.com
的logging,指向mysite.com
指向的相同IP地址(如果使用Alogging)或mysite.com
本身(如果使用CNAMElogging)。
这些步骤在Ubuntu 12.04 LTS x86_64中适用于我:
您需要在/etc/apache2/sites-available/john.mysite.com.conf创build一个新的站点文件
扩展名“.conf”是非常重要的,没有它,其余的将无法正常工作!
然后build立这样的网站:
<VirtualHost *:80> ServerName john.mysite.com DocumentRoot /var/www/john <Directory /var/www/john/> Order allow,deny Allow from all </Directory> </VirtualHost>
保存更改并使用以下命令启用站点:
sudo a2ensite john.mysite.com
重新加载Apache以启用该网站:
sudo service apache2 reload
重新启动apache服务:
sudo service apache2 restart
之后,你需要设置DNS指向该网站(作为一个子域名),DNS将需要一些时间,但在我的经验,只需要几分钟(15)。
希望这可以帮助!! 🙂
你需要为你的web服务器(假设apache)创build一个虚拟主机,至less有以下信息
<VirtualHost *:80> ServerName john.mysite.com DocumentRoot /var/www/john </VirtualHost>
这不是一个明确的虚拟主机文件,而是一个起点,它应该在你的httpd.conf文件的底部,或者你的系统pipe理虚拟主机的地方