APACHE 多个服务器的配置?
网站目录:d:www
下设两个站点:1、D:wwwszbw 2、D:wwwweb
注意前面,要开启 Vhost 及 vhos 相关 so
<VirtualHost 127.0.0.1:80>
ServerAdmin dl_lj@126.com
DocumentRoot d:/www/szbw
ServerName 域名1
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost 127.0.0.1:80>
ServerAdmin dl_lj@126.com
DocumentRoot d:/www/web
ServerName 域名2
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
这个配置其实是无效的,后面一个VirhualHost设置覆盖前面设置。
此外需要弄清楚楼主到底所谓多个服务器的配置是指什么?
1.运行多个apache程序实例来实现不同服务?
2.多个站点(虚拟主机服务) ?
--------------
对于1,可apache是允许同时运行多个程序实例的,也就是多个进程,不过他们要有不同的配置文件来对不同的端口进行监听,实际上很多商业运营的站点为了充分挖掘服务器硬件性能,保证服务的可用性,就有类似的应用;
对于2,请就是前面引文所想表达的方式——设置多个虚拟主机
补充一下,正确的设置多虚拟主机需要这样:
<VirtualHost IP1或者域名1:端口1>
....
</VirtualHost>
<VirtualHost IP2或者域名2:端口2>
....
</VirtualHost>
<VirtualHost IPn或者域名n:端口n>
....
</VirtualHost>
注意的是这里要使得每个虚拟主机都有效,必须是 <IP或者域名:端口>两两之间不完全相同
之所以说 1楼的有问题,就是因为它没有做到这一点,如果改成
----------------------------------------------
<VirtualHost 127.0.0.1:80>
ServerAdmin dl_lj@126.com
DocumentRoot d:/www/szbw
ServerName 域名1
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
ServerAdmin dl_lj@126.com
DocumentRoot d:/www/web
ServerName 域名2
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
------------------------------------------------
就是正确的啦,这两个虚拟主机监听不同的端口
或者
------------------------------
<VirtualHost 127.0.0.1:80>
ServerAdmin dl_lj@126.com
DocumentRoot d:/www/szbw
ServerName 域名1
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost 192.168.1.1:80>
ServerAdmin dl_lj@126.com
DocumentRoot d:/www/web
ServerName 域名2
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
---------------------
也是正确的,这时两个虚拟主机对应不同的IP地址进行监听