Apache配置站点与虚拟目录大全

时间:2021-09-03 12:15:15
Linux系统环境
一、单站点配置:

在apache中,配置一个站点是最基础的配置,在这里我只是要配置一个最基础的WEB站点,因此配置方式也是非常简单,具体配置方式如下:

#########主站点配置###########
#侦听端口
Listen 80
#站点域名
ServerName www.test.cn
#站点文件主目录
DocumentRoot /data/www/test
#该站点限制
<Directory />
    AllowOverride None
    Order deny,allow
    Deny from all
    Satisfy all

</Directory>

 

二、单站点虚拟目录配置:
对于不同的DocumentRoot指定的不同页面,我们可以通过别名的方式来实现,实现的功能与IIS中的虚拟目录一样,具体的配置如下:

#########主站点配置###########
#侦听端口
Listen 80
#站点域名
ServerName www.test.cn
#站点文件主目录
DocumentRoot /data/www/test
#该站点限制
<Directory />
    AllowOverride None
    Order deny,allow
    Deny from all
    Satisfy all
</Directory>
#########别名(虚拟目录)配置###########
#定义虚拟目录名称,并指定具体目录
alias /alias1/ /data/www/alias1

alias /alias2/ /data/www/alias2

 

三、多站点配置:
一台apache服务器如果跑的小网站,不可能只跑一个站,可能需要在这台服务器上配置很多个站点,实现配置方式也是比较简单的,具体实现方式如下:

#########多站点配置1(这种方式适用于一台服务器只有一个IP地址,多域名同时解析到该IP地址,并且只侦听一个80端口)###########
NameVirtualHost 192.168.1.1
#定义主机1
<VirtualHost 192.168.1.1>
DocumentRoot /data/www/test1
ServerName www.test1.cn
</Virtualhost>
#定义主机2
<VirtualHost 192.168.1.1>
DocumentRoot /data/www/test2
ServerName www.test2.cn
</Virtualhost>
#定义主机3
<VirtualHost 192.168.1.1>
DocumentRoot /data/www/test3
ServerName www.test3.cn
</Virtualhost>

#########多站点配置2(这种方式适用于一台服务器配置多个IP,多域名不同的解析到不同IP###########
#定义主机1(该域名必须解析到IP1)
<VirtualHost 192.168.0.10>
DocumentRoot /data/www/test1
ServerName www.test1.cn
</VirtualHost>
#定义主机2(该域名必须解析到IP2)
<VirtualHost 192.168.0.20>
DocumentRoot /data/www/test2
ServerName www.test2.cn
</VirtualHost>
#定义主机3(该域名必须解析到IP3)
<VirtualHost 192.168.0.30>
DocumentRoot /data/www/test3
ServerName www.test3.cn

</VirtualHost>

 

四、多站点虚拟目录配置:
由于配置多站点的方式有两种,本文就用第一种最常用的单IP多域名的方式进行配置,具体配置如下:
NameVirtualHost 192.168.1.1
#定义主机1
<VirtualHost 192.168.1.1>
DocumentRoot /data/www/test1
ServerName www.test1.cn
alias /alias1/ /data/www/alias1
</Virtualhost>
#定义主机2
<VirtualHost 192.168.1.1>
DocumentRoot /data/www/test2
ServerName www.test2.cn
alias /alias2/ /data/www/alias2

</Virtualhost>


#定义主机3
<VirtualHost 192.168.1.1>
DocumentRoot /data/www/test3
ServerName www.test3.cn
alias /alias3/ /data/www/alias3

</Virtualhost>



Windows系统环境

一、基于名称的虚拟主机

打开Apache2\conf下的httpd.conf,查找#NameVirtualHost *:80,去掉前面的注释。
添加虚拟主机www.test.com,在httpd.conf的最后,添加如下代码:
<VirtualHost *:80>

ServerName www.test.com              #主机名 
ServerAlias test.com *.test.com      #别名
DocumentRoot "d:/test"               #所在目录

</VirtualHost>

二、增加虚拟目录
1、全局的
如httpd.conf中的/icons/
Alias /icons/ "C:/Apache Group/Apache2/icons/"

<Directory "C:/Apache Group/Apache2/icons">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

2、虚拟主机内的

在<VirtualHost *:80></VirtualHost>之间添加上面内容
如:
<VirtualHost *:80>

ServerName www.test.com              #主机名 
ServerAlias test.com *.test.com      #别名
DocumentRoot "d:/test"               #所在目录

Alias /pic "d:/pic"

<Directory "d:/pic">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

</VirtualHost>