Linux-Apache默认虚拟主机

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux-Apache默认虚拟主机相关的知识,希望对你有一定的参考价值。

一台服务器可以访问多个网站,每个网站都是一个虚拟主机
概念:域名(主机名)、DNS、解析域名、hosts
任何一个域名解析到这台机器,都可以访问的虚拟主机就是默认虚拟主机

网站更目录
技术分享图片
域名
技术分享图片
#windows临时将一个域名指向到某个服务器上去

虚拟主机,去掉行首的#
vim /usr/local/apache2/conf/httpd.conf //搜索httpd-vhost,去掉#
技术分享图片
因为,一个配置文件,对于我不太方便,方式需要打开虚拟主机,这样可以配置对个servername
下图路径为虚拟主机配置文件
技术分享图片
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf //改为如下
下述中,则代表每个虚拟主机,对应一个网站,
<VirtualHost :80>
ServerAdmin [email protected] #定义管理员邮箱,存在与否,意义不大
DocumentRoot "/data/wwwroot/aming.com" #定义网站的根目录所在路径
ServerName aming.com #域名,只能写一个
ServerAlias www.aming.com www.abc.com # 可设置多个域名,域名的别名
ErrorLog "logs/aming.com-error_log" #定义错误日志
CustomLog "logs/aming.com-access_log" common #定义访问日志
####如果虚拟主机配置文件生效,则之前所定义的(下图所示)会失效
技术分享图片
</VirtualHost>
技术分享图片
<VirtualHost
:80>
DocumentRoot "/data/wwwroot/www.123.com"
ServerName www.123.com
</VirtualHost>

/usr/local/apache2/bin/apachectl –t #检测语法是否错误
/usr/local/apache2/bin/apachectl graceful #重新加载

默认主机:
任何域名,只要解析过来,只要指向本机的ip,如果访问的域名不在配置文件里面,则会走默认主机
crul -x192.168.1.30:80 abc.com

总结,当在主配置文件中httpd.conf,打开虚拟主机配置文件,虚拟主机生效是,则主配置文件里的网站根目录所在路径和域名则会失效。
虚拟主机配置文件,可定义多个VirtualHost,而每一个VirtualHost代表一个站点,都是虚拟主机,

以上是关于Linux-Apache默认虚拟主机的主要内容,如果未能解决你的问题,请参考以下文章

linux-apache

Linux-apache httd.conf文件详解

linux-Apache-配置安装调试步骤

linux-Apache权限限制IP端口域名+DNS域名解析

apache默认虚拟主机

LAMP--默认虚拟主机