apache虚拟主机设置及与IIS共享80端口的实现
2010-02-04 17:43
597 查看
引言:最近帮以客户搭建服务器,服务器就要运行php的网站和asp的网站,而且php的网站有负责url重写,刚开始不好怎么配置服务器,最后经过考虑决定用apache设计虚拟主机,并与iis共享80端口。下面就是具体的操作了(前提是iis和apache都已经运行正常了)。
一、apache虚拟主机配置
可直接用记事本打开apache安装目录下的httpd.conf文件,也可以在httpd.conf文件中添加Include conf/extra/httpd-vhosts.conf(注意:文件所在的路径为apache安装目录),然后在httpd-vhosts.conf文件中添加如下信息
示例如下:
#号是起注释作用
实例
代码:
NameVirtualHost *:80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
<VirtualHost *:80>
DocumentRoot “D:/DATA/wwwroot/Apache” //绑定的网站目录
ServerAdmin mailto:admin@amcone.cn //管理邮箱地址
ServerName amcone.cn //绑定的域名
ErrorLog logs/dummy-host.example.com-error_log //错误的日志
CustomLog logs/dummy-host.example.com-access_log common //客户日志
ErrorDocument 404 http://www.amcone.cn/404.html //自定义出错页
</VirtualHost>
<VirtualHost *:80>
DocumentRoot “D:/DATA/wwwroot/BBS” (网站目录)
ServerName bbs.amcone.cn (虚拟主机)
ErrorDocument 404 http://www.amcone.cn/404.html
</VirtualHost>
要绑定多少个域名,就添加多少个<VirtualHost></VirtualHost>记录
完毕!
二、一个IIS与Apache共存80端口的解决方案
先说一下怎么实现的吧,Apache有个功能叫逆向代理,我们可以通过它来作为IIS的代理,从而做到同时能通过80端口访问分别在IIS上和Apache上的文件—-当然,也可以通过它把访问指向几台不同的服务器(这样似乎就能搭建一个集群?)。
先把IIS的端口修改成8080,然后我们打开apache的httpd.conf文件,把
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
前面的注释(#)去除 (去掉#才会加载模块)
然后我们再增加一个虚拟主机:
ServerName iis.amcone.cn (这里设置你要仿问的域名或主机地址,本机测试请修改host文件)
ProxyPass / http://localhost:8080/ (这里保持默认。不需要修改)
ProxyPassReverse / http://localhost:8080/ (这里保持默认。不需要修改)
逆(反)向代理使用ProxyPass和ProxyPassReverse指令进行配置。
IIS里面有多少个站就添加多少个虚拟主机和规则
以上配置完成后须重新启动apache才能立马生效,如果你是在本机测试并且在windows平台下,请用记事本打开系统中的host文件,并做如下修改:
127.0.0.1 localhost
127.0.0.1 amcone.cn
127.0.0.1 bbs.amcone.cn
127.0.0.1 iis.amcone.cn
一、apache虚拟主机配置
可直接用记事本打开apache安装目录下的httpd.conf文件,也可以在httpd.conf文件中添加Include conf/extra/httpd-vhosts.conf(注意:文件所在的路径为apache安装目录),然后在httpd-vhosts.conf文件中添加如下信息
示例如下:
#号是起注释作用
实例
代码:
NameVirtualHost *:80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
<VirtualHost *:80>
DocumentRoot “D:/DATA/wwwroot/Apache” //绑定的网站目录
ServerAdmin mailto:admin@amcone.cn //管理邮箱地址
ServerName amcone.cn //绑定的域名
ErrorLog logs/dummy-host.example.com-error_log //错误的日志
CustomLog logs/dummy-host.example.com-access_log common //客户日志
ErrorDocument 404 http://www.amcone.cn/404.html //自定义出错页
</VirtualHost>
<VirtualHost *:80>
DocumentRoot “D:/DATA/wwwroot/BBS” (网站目录)
ServerName bbs.amcone.cn (虚拟主机)
ErrorDocument 404 http://www.amcone.cn/404.html
</VirtualHost>
要绑定多少个域名,就添加多少个<VirtualHost></VirtualHost>记录
完毕!
二、一个IIS与Apache共存80端口的解决方案
先说一下怎么实现的吧,Apache有个功能叫逆向代理,我们可以通过它来作为IIS的代理,从而做到同时能通过80端口访问分别在IIS上和Apache上的文件—-当然,也可以通过它把访问指向几台不同的服务器(这样似乎就能搭建一个集群?)。
先把IIS的端口修改成8080,然后我们打开apache的httpd.conf文件,把
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
前面的注释(#)去除 (去掉#才会加载模块)
然后我们再增加一个虚拟主机:
ServerName iis.amcone.cn (这里设置你要仿问的域名或主机地址,本机测试请修改host文件)
ProxyPass / http://localhost:8080/ (这里保持默认。不需要修改)
ProxyPassReverse / http://localhost:8080/ (这里保持默认。不需要修改)
逆(反)向代理使用ProxyPass和ProxyPassReverse指令进行配置。
IIS里面有多少个站就添加多少个虚拟主机和规则
以上配置完成后须重新启动apache才能立马生效,如果你是在本机测试并且在windows平台下,请用记事本打开系统中的host文件,并做如下修改:
127.0.0.1 localhost
127.0.0.1 amcone.cn
127.0.0.1 bbs.amcone.cn
127.0.0.1 iis.amcone.cn
相关文章推荐
- Apache 下httpd.conf修改实现多虚拟主机共享80端口
- Apache和IIS共享80端口的四个设置方法
- Windows Server里80端口与多IP绑定(可实现IIS与Apache共享80端口)
- apache转发实现iis和apache共享80端口
- 使用apache代理实现IIS和apache共享80端口
- apache转发实现iis和apache共享80端口
- Apache和IIS共享80端口的四个设置方法
- linux虚拟系统与windows主机共享文件之用vmware-tools设置实现
- IIS&Apache虚拟主机设置(主机头,一服多站)httpd.conf
- 虚拟主机设置(IIS一机多站的实现方法)
- IIS&Apache虚拟主机设置(主机头,一服多站)
- 利用Apache端口转发实现虚拟主机服务器php+jsp共用80端口
- 用Apache实现虚拟主机服务
- [置顶] 两步轻松搞定 Apache 本地虚拟主机设置
- IIS与Apache共用80端口方法,如何让iis和apache共享80端口
- php设置Apache虚拟主机vhost
- Apache 一个ip多个域名设置(虚拟主机)
- 关于Windows下Apache使用虚拟主机(多域名多站点)的设置
- (转载)Apache下的开设虚拟主机设置--添加站点
- apache+tomcat实现动态虚拟主机