apache与tomcat中虚拟目录与虚拟主机配置实例

发布时间:2020-09-03编辑:脚本学堂
本文介绍了在apache与tomcat中配置虚拟目录与虚拟主机的方法,感兴趣的朋友参考下。

一,配置tomcat虚拟目录

1、 打开$tomcat_home$/conf/server.xml, 在<Host>和</host>之间加上
<Context path="/site" docBase="d:site" reloadable="true" debug="0"></Context>
参数:path 表示在浏览器中输入http://localhost:8080/site
docBase表示你的程序包的物理绝对路径,默认的绝对路径是$Tomcat_Home$/webapps
设置后会在$tomcat_home$/conf/catalina/localhost目录下生成一个site.xml文件,此文件的内容就是刚才设置的内容。

2、在$tomcat_home$/conf/catalina/localhost目录下会生成相应的配置文件,因此可以直接在$tomcat_home$/conf/catalina/localhost目录下写配置文件文件名任意取,最好是与web应用相同便于管理,如site.xml内容同上
<Context path="/site" docBase="d:site" reloadable="true" debug="0"></Context>
然后,即可通过 http://localhost:8080/site 访问了。

二,添加tomcat虚拟主机

打开$tomcat_home$/conf/server.xml,在</host>后面添加:
 

复制代码 代码示例:
<Host name="mybus.jb200.com" debug="0" appBase="/usr/etc" unpackWARs="true" autoDeploy="true">
<Logger className="org.apache.catalina.logger.FileLogger" directory="logs"
prefix="mybus_log." suffix=".txt" timestamp="true"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="mybus_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
<Context path="" docBase="/usr/etc/MyBus/" debug="0" reloadable="true" crossContext="true"></Context>
 

</Host>说明:name为主机名,appBase为应用程序目录,docBase为网站根目录
prefix为日志文件名,suffix为日志文件扩展名 

三,apache添加虚拟目录
 

复制代码 代码示例:
alias /mybus/ "/usr/tomcat6/webapps/MyBus/"
<Directory "/usr/tomcat6/webapps/MyBus/">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

四,apache 添加虚拟主机
#NameVirtualHost *:80
如果NameVirtualHost前面有#,必须将其去除,其中*表示所有虚拟主机名,80为访问端口
并且<VirtualHost >的属性要与NameVirtualHost一致如:
 

复制代码 代码示例:

<VirtualHost *:80>
ServerName mybus.jb200.com
ServerAlias mybus.jb200.com
DocumentRoot "/usr/tomcat6/webmybus/MyBus"
ErrorLog logs/mybus.-error_log
CustomLog logs/mybus.-access_log common
RewriteEngine   on
RewriteCond %{HTTP_HOST} ^mybus.jb200.com
#RewriteRule ^/?$ /%{HTTP_HOST}$1
RewriteRule  ^/openid/(w+)$ /OpenIdServer?username=$1 [PT]
</VirtualHost>

<VirtualHost *:80>
ServerName *
ServerAlias *
DocumentRoot "/usr/tomcat6/webapps/ROOT"
ErrorLog logs/tiger-host.-error_log
CustomLog logs/tiger-host.-access_log common
RewriteEngine   on

#RewriteCond %{HTTP_HOST} ^([0-9a-zA-Z]+).openid.mybus.jb200.com/?$
#RewriteRule ^([0-9]+).jb200.com/?$ http://mybus.jb200.com [R,L]

RewriteCond %{HTTP_HOST} ^([0-9]+).jb200.com/?$
RewriteRule ^/?$ /%{HTTP_HOST}$1
RewriteRule   ^/([0-9]+).jb200.com/?$   /shop/shop.jsp?id=$1 [R,L]

RewriteCond %{HTTP_HOST} ^(wap).jb200.com/?$
RewriteRule ^/?$ /%{HTTP_HOST}$1
RewriteRule   ^/(wap).jb200.com/?$   /mobile/ [R,L]

RewriteCond %{HTTP_HOST} ^(club|mall|fair|news).jb200.com/?$
RewriteRule ^/?$ /%{HTTP_HOST}$1
RewriteRule ^/(www|club|mall|fair|news).jb200.com(.*)  /$1 [L,R]

</VirtualHost>