我有一个Ubuntu
LAMP
网站托管在vps.net
。
我有一个名为的目录john
可以通过访问,mysite.com/john
我希望它可以通过以下方式访问john.mysite.com
我的站点根目录是/var/www
,此目录位于/var/www/john
我需要做什么才能实现这一点?
答案1
在以下位置创建新的站点文件/etc/apache2/sites-available/john.mysite.com
设置网站如下:
<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
答案2
除了配置 Apache 之外,还不要忘记 DNS 部分:您将需要一个记录john.mysite.com
,指向相同的 IP 地址mysite.com
指向(如果使用 A 记录),或者指向mysite.com
其自身(如果使用 CNAME 记录)。
答案3
以下步骤对我在 Ubuntu 12.04 LTS x86_64 中有效:
您需要在以下位置创建一个新的站点文件/etc/apache2/sites-available/john.mysite.com.conf
扩展.conf
非常重要,没有它,其余的将无法工作!!
然后设置网站如下:
<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)。
希望这可以帮助!! :)
答案4
你需要为你的 Web 服务器(假设是 Apache)创建一个虚拟主机,该虚拟主机至少包含以下信息
<VirtualHost *:80>
ServerName john.mysite.com
DocumentRoot /var/www/john
</VirtualHost>
这不是一个明确的 vhost 文件,而是一个起点,它应该放在 httpd.conf 文件的底部,或者系统管理 vhosts 的任何位置