-
May28
Apache2与Resin2整合虚拟主机的配置
Posted in Linux, 849 views
-
Apache+Resin是许多网站采用的架构,Apache在前,Resin在后,可以实现负载均衡、解析各类应用及高扩展性等多种强大的功能。Apache的文档很多,但是涉及到Resin的资料比较少。最好的参考,依然是2者附带的官方文档,Resin中关联apache的部分讲的不够详细,许多细节依然需要自己多做测试,才可以找到合适的方法解决问题。
这里是一个Apache和Resin整合搭建虚拟主机的例子,版本号分别为Apache2.2.8和Resin2.1.17。
通过编译将Apache和Resin整合的资料很多,不再赘述。编译完成后Resin会在Apache的httpd.conf中添加2行
LoadModule caucho_module /opt/apache-2.2.8/modules/mod_caucho.so
CauchoHost localhost 6802如果要用Resin来解析jsp文件,需要添加
AddHandler caucho-request jsp
SetHandler caucho-requestApache的配置
在httpd.conf中,首先加入
NameVirtualHost *:80
然后可以添加虚拟主机的配置段
<VirtualHost *:80>
ServerAdmin wm@dbalife.com
DocumentRoot /opt/resin-2.1.17/webapps
ServerName vhost1.dbalife.com
CauchoConfigFile /opt/resin-2.1.17/conf/vhost1.conf
ErrorLog logs/ip-error_log
TransferLog logs/ip-access_log
</VirtualHost>与Apache单配虚拟主机差不多,多出一个字段CauchoConfigFile来指定这个虚拟主机的Resin配置文件。注意<Virtualhost>标签必须写在LoadModule caucho_module等Resin整合信息之后,以使Apache正确识别Virtualhost中的Resin相关字段。
Resin的配置
在CauchoConfigFile指定的配置文件vhost1.conf中,最简化只需要写入这样几句:
<caucho.com>
<http-server>
<srun host=localhost port=6802/>
<host id='vhost1.dbalife.com'>
<app-dir>/opt/resin-2.1.17/webapps/vhost1</app-dir>
</host>
</http-server>
</caucho.com>即几个Resin配置文件的核心标签:
- <caucho.con>声明
- <http-server>http服务段
- <srun>进程通讯
- <host>(虚拟)主机段
- <app-dir>应用发布路径
如果配置多个虚拟主机,srun中的port需要指定不同的端口号,否则Resin启动会发生冲突。
至此简单的虚拟主机已经设定完毕.
启动虚拟主机:
/opt/resin-2.1.17/bin/httpd.sh -conf /opt/resin-2.1.17/conf/vhost1.conf -pid /opt/resin-2.1.17/conf/vhost1.pid start
关闭虚拟主机:
/opt/resin-2.1.17/bin/httpd.sh -conf /opt/resin-2.1.17/conf/vhost1.conf -pid /opt/resin-2.1.17/conf/vhost1.pid stop
对Resin应用的个性化需求,上面简单的配置文件不能满足需求。我们可以用<resin:include>标签来扩展配置文件。这里是一个完整的例子:
<caucho.com>
<resin:include href='common_caucho.conf'/>
<http-server>
<srun host=localhost port=6802/>
<resin:include href='common_httpserver.conf'/>
<host id='vhost1.dbalife.com'>
<app-dir>/opt/resin-2.1.17/webapps/vhost1</app-dir>
<resin:include href='common_host.conf'/>
</host>
</http-server>
</caucho.com>在这个文件中,通过引入common_caucho.conf、common_httpserver.conf和common_host.conf,对<caucho><http-server><host>3个标签的内容进行丰富,最终形成一个完整的Resin配置文件,多个虚拟主机可以通过这种方式共享相同配置参数。
-EOF-
Related posts:

Leave a comment | Trackback 这篇文章还没有评论.