Appserv配置多站点教程第一步:下载Appserv并安装
我下载的是Appserv-Win32-2.5.10版本,下载后直接双击并根据提示安装即可。
Appserv配置多站点教程第二步:修改Windows系统hosts文件
我的Appserv安装环境是Windows7 64bit,为什么首先要修改hosts文件呢?这是因为一般情况下Appserv的安装调试都是在本机上进行的,当使用Appserv配置多站点时,域名指向都是127.0.0.1,你需要对不同的域名进行映射,否则即便配置完毕也是无法访问的,除非你有公网IP,并通过DNS进行映射。
找到WINDOWS\system32\drivers\etc\hosts文件并打开,找到127.0.0.1 localhost,并添加需要映射的测试站点域名,比如:
127.0.0.1 www.1.com127.0.0.1 www.2.com |
保存hosts文件。
Appserv配置多站点教程第三步:修改Apache配置文件,启用虚拟主机配置
在Appserv安装目录中找到Apache2.2\conf目录,打开apache配置文件httpd.conf,找到# Virtual hosts将
#Include conf/extra/httpd-vhosts.conf |
中的#去除。
由于Appserv配置中Apache配置是以定制方式存在,上述语句代表Apache启用虚拟主机配置。同时Appserv多站点配置功能是以虚拟主机的方式实现,你可以一并将httpd配置文件中的
#LoadModule vhost_alias_module modules/mod_vhost_alias.so |
#去除(经过我的测试,其实此Apache Module加不加载没太大关系)
Appserv配置多站点教程第四步:修改Apache虚拟主机配置
打开conf/extra/httpd-vhosts.conf配置文件,文件中本身存在两条虚拟主机配置记录,只要稍作修改即可。
将ServerAdmin(邮件地址)、DocumentRoot(网站根目录,我设定的目录为”C:/AppServ/www/wwwleapsoulcn/”和C:/AppServ/www/wwwphptestcn/) 、ServerName(站点域名信息)、ServerAlias(站点域名别名)配置选项设置为你需要设定的信息即可。Appserv配置多站点实例如下:
<VirtualHost *:80> ServerAdmin 你的邮箱地址 DocumentRoot “C:/AppServ/www/1” ServerName www.1.com ServerAlias www.1.com ErrorLog “logs/dummy-host.x-error.log” CustomLog “logs/dummy-host.x-access.log” common </VirtualHost><VirtualHost *:80> ServerAdmin 你的邮箱地址 DocumentRoot “C:/AppServ/www/2” ServerName www.2.com ErrorLog “logs/dummy-host2.x-error.log” CustomLog “logs/dummy-host2.x-access.log” common </VirtualHost> 备注:ServerName对应的域名要与hosts文件定义的域名要一致,不然有可能会出现怎么设置都是访问的第一个虚拟主机哦 |
Appserv多站点配置提示:如果同时配置多个虚拟主机,务必确保第一条虚拟主机记录不可缺失ServerAlias选项,否则配置不会成功。
最后保存conf/extra/httpd-vhosts.conf配置文件。
重启Apache时注意请在用管理员身份运行CMD模式下通过net start apache2.2或net stop apache2.2方式重启Apache。
此时通过IE以域名方式即可访问使用Appserv配置的多个站点了。
上述方法是以域名方式使用Appserv配置多站点访问功能,如果以IP方式也是可以实现此配置功能,区别在于需要使用不同的端口。除了原有的上述httpd.conf配置外,需要再Listen 80语句后,添加需要侦听的端口,比如:
Listen 8080 Listen 8081 |
然后将conf/extra/httpd-vhosts.conf配置文件中的<VirtualHost *:80>修改为<VirtualHost 对应IP:对应侦听端口>即可,其他配置不变。
最后删除hosts文件中之前设定的配置,重启Apache服务即可。
如果还会出现上面这个问题或者域名访问没用,那就要再设置一下权限了,找到
<Directory /> Options FollowSymLinks ExecCGI Indexes AllowOverride None Order deny,allow Deny from all Satisfy all </Directory> |
修改用红色标示的字符即可解决。
<Directory />
Options FollowSymLinks ExecCGI Indexes
AllowOverride None
Order deny,allow
Allow from all
Satisfy all
</Directory>
至此,怎么使用Appserv以域名或IP地址方式实现配置多站点访问教程就介绍完了。