使用的是腾讯云的centos7.6,httpd的版本是2.4.6
网上的各种方法都试过了,首先在httpd.conf中就没找到vhost的文件,于是尝试了在httpd.conf和conf目录下建立文件输入信息,如下
<VirtualHost *:80>
DocumentRoot "/var/www/html/lovewall"
ServerName lw.xxx.top
ErrorLog logs/lovewall_log
CustomLog logs/lovewall_log common
<Directory "/var/www/html/lovewall">
OPtions none
Allowoverride none
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/var/www/html/personal"
ServerName www.xxx.top
ErrorLog logs/personal_log
CustomLog logs/personal_log common
<Directory "/var/www/html/personal">
OPtions none
Allowoverride none
Require all granted
</Directory>
</VirtualHost>
代码如上,xxx是我的域名,做了解析,但是一旦访问域名或者是直接连IP,都会直接到/var/www/html下面,也就是默认目录,无论如何都没法到达我设定的目录
另外的端口的虚拟主机也试过了,依旧不行。求帮助!!!
首先,我演示一下,不同端口的配置你看看,
虚拟主机配置:
<VirtualHost *:8080>
ServerName localhost:8080
DocumentRoot /var/www/html/lovewall
CustomLog "logs/lovewall_log" combined
<Directory /var/www/html/lovewall>
Require all granted
AllowOverride None
</Directory>
</VirtualHost>
好了,如果配置80端口,虚拟主机配置是会覆盖了默认配置的。
所以,你要用基于名称的虚拟主机servername做区分,用一样的版本,你要知道虚拟主机文件是自己编辑的
所以,你排错的思路:
先明确配置文件是否正确,启动服务是否启动正常,端口是否侦听OK,
然后你可以先好像我这样,弄个本地hosts文件进行测试就知道 虚拟机主机是否生效,生效后,才改成你自己域名上的,再进行测试。
这样来排查