Apache 虚拟主机文档
Apache 虚拟主机文档
术语虚拟主机指的是在单一机器上运行多个网站 (例如 company1.example.com
和 company2.example.com
) 。 虚拟主机可以“基于 IP”,即每个 IP 一个站点; 或者“基于名称”, 即每个 IP 多个站点。这些站点运行在同一物理服务器上的事实不会明显的透漏给最终用户。
Apache 是第一个支持基于 IP 的虚拟主机的服务器。 Apache 版本 1.1 和更新的版本同时支持基于 IP 和基于名称的虚拟主机。 基于名称的虚拟主机有时候称为基于主机或非 IP 的虚拟主机.
以下解释是在 Apache 中支持虚拟主机的所有详细信息的文档页面列表。
虚拟主机支持
- 基于名称的虚拟主机 (每个 IP 多个站点)
- 基于 IP 的虚拟主机 (每个 IP 一个站点)
- 虚拟主机样例
- 文件句柄限制 (或者日志文件太多)
- 动态配置的大规模虚拟主机
- 虚拟主机匹配的深入讨论
配置指令
如果你要调试虚拟主机配置,你会发现 Apache 的命令行参数 -S
非常有用。即输入以下命令:
/usr/local/apache2/bin/httpd -S
这个命令将会显示 Apache 是如何解析配置文件的。仔细检查 IP 地址与服务器名称可能会帮助你发现配置错误 (参见 httpd
程序文档,以便了解其它命令行选项)。
ServerAlias:ServerName起别名
别名,访问www.maiche.pro www.beian.pro都会解析到这个目录
<VirtualHost www.beian.pro:80>
DocumentRoot /var/www/html/sale
ServerName beian.pro
ServerAlias www.beian.pro www.maiche.pro
</VirtualHost>
ServerAdmin webmaster@comexe.cn
站点管理员Email地址
DocumentRoot /home/dns0755
站点根目录
ServerName dns0755.net
站点主机名
ServerAlias *.dns0755.net
站点别名,“*”表示任意字符
ErrorLog “| /usr/local/sbin/rotatelogs /var/log/http/dns0755-err.log 604800”
错误日志控制
CustomLog “| /usr/local/sbin/rotatelogs /var/log/http/dns0755.log 604800” combined
访问日志
/usr/local/sbin/rotatelogs是日志管理程序
/var/log/http/dns0755.log是日志文件名
604800的单位是秒,这种写法表示每隔7天产生一个日志文件
如果有多个站点要添加,请重复执行第2步操作。
http://httpd.apache.org/docs/2.4/vhosts/name-based.html