我想要
http://www.mysite.com
和
http://test.mysite.com
在生产网络服务器上运行,现在我在本地机器上进行一些基本测试,然后在生产网络服务器上传输数据.
如果可能的话我想
仅使用apache的虚拟主机和/ etc / hosts.
我在virtualHost中使用apache的ServerAlias指令,如:
<VirtualHost *:80> DocumentRoot /path/to/mysite ServerName www.mysite.fr ServerAlias *.mysite.com <Directory /path/to/mysite> Options FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost>
然后在/ etc / hosts中我放置了我想要的域名:
127.0.0.1 www.mysite.com 127.0.0.1 test.mysite.com
当我在本地测试时,它可以工作!
(我可以访问www.mysite.com和test.mysite.com)
当我在远程网络服务器上测试时,它只是忽略我的设置,
并且只有默认的www.mysite.com可用.
我错过了什么?
或者我的问题应该是,是否可以使用虚拟主机在网络服务器上访问网址(www和测试)
和/ etc / hosts文件?
解决方法
您是如何尝试访问test.mysite.com的?
为了在Internet上工作,您需要在DNS的任何服务器/服务主机上为test.mysite.com添加DNS A记录,或者将远程服务器的公共IP的记录添加到/ etc / hosts文件中.
/ etc / hosts仅适用于本地计算机.
在本地设置中,在/ etc / hosts中:
[YOUR REMOTE SERVER'S PUBLIC IP] www.mysite.com test.mysite.com
但是,这只适用于您(或您将记录手动添加到正确的主机文件的任何系统),直到为远程服务器的test.mysite.com的公共IP添加DNS A记录.