完整的应该是这样,在httpd.conf末位添加,或者取消注释NameVirtualHost xxx
NameVirtualHost 192.168.56.2
DocumentRoot /usr/local/apache2/manual
DirectoryIndex index.html.en
ServerName www.a.com
AllowOverride None
Options indexes
DirectoryIndex index.html.en
Order allow,deny
Allow from all
同时要关闭SELinux,否则Apache会找不到DocumentRoot
刚刚想到一个问题啊,你的IP地址是内网IP,但是Apache的VirtualHost是根据域名区分的,也就是说你要有个DNS能正确的把www.a.com解析成你局域网内的 192.128.*.*,如果不自己在局域网内开DNS服务器的话这应该是办不到的,也就是说,即便Apache成功的开启了VirtualHost,你也很难进行测试
还有一个方案,就是如果你用路由器上网的话,路由器应该会有一个功能叫端口映射,它可以把来自外部特定端口的TCP请求转发到你的机器上。这样你可以在域名供应商那里把DNS记录指向你的路由器IP,这应该是一个公网IP,然后设置路由器把80号端口的请求转发到 192.168.56.2上,这样就可以测试VirtualHost啦
ServerName www.a.com
DocumentRoot /usr/local/apache2/manual
这里都是大写的
你可以把一些基本的写上,把没必要的东西先注释掉,然后再一次开启,看是那个语句的事
你加我个Q聊下被 734113663
documentroot 改为DocumentRoot
directoryindex 改为DirectoryIndex
顺便注意一下主页文件是不index.html.en
还是找技术人员处理吧。。