apache的虚拟主机分为三种:
基于ip的虚拟主机
基于端口的虚拟主机
基于域名的虚拟主机
基于域名的虚拟主机:
对apache做虚拟主机主要是修改/application/apache/conf/extra目录下面的httpd-vhosts.conf 文件
NameVirtualHost *:80
#
<VirtualHost *:80>
ServerAdmin 15259513**@qq.com 管理邮箱
DocumentRoot "/var/html/www/" 该域名要访问的主页的目录
ServerName www.abc.com 域名
ServerAlias etiantian.com 域名的别名
ErrorLog "|/usr/local/sbin/cronolog /var/logs/apache/%Y/%m/error_www_%Y%m%d.log"
CustomLog "|/usr/local/sbin/cronolog /var/logs/apache/%Y/%m/access_www_%Y%m%d.log" combined 对日志做日志轮询。
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/html/blog/"
ServerName blog.abc.com
ErrorLog "logs/blog-error_log"
CustomLog "logs/blog-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/html/bbs/"
ServerName bbs.abc.com
ErrorLog "logs/bbs-error_log"
CustomLog "logs/bbs-access_log" common
</VirtualHost>
更改好httpd-vhosts.conf文件后需要在apache主配置文件进行授权。
vim httpd.conf 在该配置文件添加以下内容:
</IfModule>
<Directory "/var/html/"> 用户访问主页的目录
Options -Indexes FollowSymLinks -Indexes 不显示apache的目录结构
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Include conf/extra/httpd-vhosts.conf 将这行的注释去掉。
============================================================
基于不同端口的虚拟主机:
对apache做虚拟主机主要是修改/application/apache/conf/extra目录下面的httpd-vhosts.conf 文件
NameVirtualHost *:80
NameVirtualHost *:8000
NameVirtualHost *:8080
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/html/www/"
ServerName www.etiantian.com
ServerAlias etiantian.com
ErrorLog "|/usr/local/sbin/cronolog /var/logs/apache/%Y/%m/error_www_%Y%m%d.log"
CustomLog "|/usr/local/sbin/cronolog /var/logs/apache/%Y/%m/access_www_%Y%m%d.log" combined
</VirtualHost>
<VirtualHost *:8000>
ServerAdmin [email protected]
DocumentRoot "/var/html/blog/"
ServerName blog.etiantian.com
ErrorLog "logs/blog-error_log"
CustomLog "logs/blog-access_log" common
</VirtualHost>
<VirtualHost *:8080>
ServerAdmin [email protected]
DocumentRoot "/var/html/bbs/"
ServerName bbs.etiantian.com
ErrorLog "logs/bbs-error_log"
CustomLog "logs/bbs-access_log" common
</VirtualHost>
更改好httpd-vhosts.conf文件后需要在apache主配置文件进行授权。
vim httpd.conf 在该配置文件添加以下内容:
</IfModule>
<Directory "/var/html/"> 用户访问主页的目录
Options -Indexes FollowSymLinks -Indexes 不显示apache的目录结构
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Include conf/extra/httpd-vhosts.conf 将这行的注释去掉。