关于jk的一些命令

定义workers 
JkWorkersFile 指定mod_jk的workers定义. 

JkWorkersFile /etc/httpd/conf/workers.properties 

Logging 
JkLogFile指定mod_jk放log文件的位置. 

JkLogFile /var/log/httpd/mod_jk.log 

JkLogLevel 可以设置以下log级别 : 

info 包含标准的mod_jk行为 (默认). 
error 包含错误信息. 
debug mod_jk行为的全部信息 
JkLogLevel info 

JkLogStampFormat 用来配置log文件的日期/时间格式. 使用strftime()的格式化字符串,默认是[%a %b %d %H:%M:%S %Y] 

JkLogStampFormat [%a %b %d %H:%M:%S %Y] 

JkRequestLogFormat 设置个人用户请求的log格式. 

Options Description 
%b 发送的字节, 不包括 HTTP headers (CLF format) 
%B 发送的字节, 不包括 HTTP headers 
%H 协议 
%m 请求方式(get/post) 
%p 服务器响应请求的规范端口. 
%q 查询字符串 (如果存在以?开头,否则是空串) 
%r 请求的第一行. 
%s HTTP状态码 
%T 请求间隔, 处理请求耗费的时间 秒.微秒 
%U 请求的url路径,不包含查询字符串. 
%v 响应请求的规范服务器名字 
%V 根据UseCanonicalName设置的服务器名字. 
%w Tomcat worker 名字 

JkRequestLogFormat %w %V %T 

转发 
JkOptions 允许你设置一些转发设置 允许或者不允许以下设置. 

JkOptions ForwardKeySize, you ask mod_jk, when using ajp13, to forward also the SSL Key Size as required by Servlet API 2.3. This flag shouldn’t be set when servlet engine is Tomcat 3.2.x (on by default). . 
JkOptions ForwardKeySize,要求mod_jk当使用ajp13的时候.因为Servlet API 2.3的需要,一起提交SSL Key Size.这个状态在servlet引擎3.2.x里不能设置(默认是打开的). 
JkOptions +ForwardKeySize 

JkOptions ForwardURICompat, you told mod_jk to send the URI to Tomcat normally, which is less spec compliant but mod_rewrite compatible, use it for compatibility with Tomcat 3.2.x engines (on by default). 
JkOptions ForwardURICompat,要求mod_jk正常发送uri给tomcat,不符合规范,但是mod_rewrite兼容.使用它为Tomcat 3.2.x引擎的兼容性.(默认是打开的) 
JkOptions +ForwardURICompat 

JkOptions ForwardURICompatUnparsed, the forwarded URI is unparsed, it’s spec compliant but broke mod_rewrite. 
JkOptions ForwardURICompatUnparsed,提交的uri是未解析的,兼容规范,但是中断了mod_rewrite. 
JkOptions +ForwardURICompatUnparsed 

JkOptions ForwardURIEscaped, 提交的url逃逸了,tomcat自己做解码. 

JkOptions +ForwardURIEscaped 

JkOptions ForwardDirectories 被用来与apache的DirectoryIndex命令配合. As such mod_dir should be available to Apache, statically or dynamically (DSO) 

配置了DirectoryIndex的时候,Aapache将为每个在命令中指定的本地url建立子请求,来决定是否有匹配的本地文件. 
如果ForwardDirectories设置为false(默认) 并且Apache没找到任何匹配的文件,Apache将提供文件夹的内容(如果这个文件夹的Options命令指定了Indexes)或者一个403 Forbidden(如果这个文件夹的Options命令没指定Indexes) 
如果ForwarDirectories设置为true并且Apache没找到任何匹配的文件,请求将提交tomcat解决,这个被用在万一apache在几种情况下在本地文件系统上不能找到index文件:tomcat和apache不在一台机器上,jsp文件已经被预编译等等. 
注意,本地可见的文件将优先于只能tomcat可见的文件.(使用,如果apache能看到文件,那么就是将被来提供的那个).这个很重要,如果多于一种文件被tomcat提供,例如Velocity pages 和 JSP pages. 
JkOptions +ForwardDirectories 

JkEnvVar 使用允许你从apache向tomcat提交一个环境变量. 

JkEnvVar SSL_CLIENT_V_START 

给tomcat指派url 
如果你已经像上面记录的建立了一个定义的或者本地版本的mod_jk.conf-local.你可以改变像workers或者URL前缀的设置.
JkMount使用指派指定的url给Tomcat. 通常一个JkMount命令像这样: 

JkMount [URL 前缀] [Worker name] 
# 发送所有以.jsp结尾的请求给worker1 
JkMount /*.jsp worker1 
# 发送所有以/servlet结尾的请求给worker1 
JkMount /*/servlet/ worker1 
# 发送所有在/otherworker下的jsp请求给worker2 
JkMount /otherworker/*.jsp worker2 

可以在你的httpd.conf文件顶级或者段中使用JkMount命令. 
配置apache提供静态web应用程序文件. 
如果 Tomcat Host appBase (webapps) 文件夹apache可以访问,Apache可以被配置为提供web应用程序上下文文件夹的静态文件而不是转送给tomcat. 
注意:如果Apache 被配置为为一个web应用程序提供静态页面.它将绕过任何你在web.xml中配置的安全约束. 
Use Apache’s Alias directive to map a single web application context directory into Apache’s document space for a VirtualHost: 
使用Apache的Alias使用来映射一个单web应用程序上下文文件夹到Apache的虚拟主机文档空间 
# examples web应用程序的静态内容,apache来提供. 
Alias /examples /vat/tomcat3/webapps/examples 
# 下面一行禁止用户直接访问 WEB-INF 

AllowOverride None 
deny from all 

# 所有的jsp请求给worker1 
JkMount /*.jsp worker1 
# 所有的servlets请求给worker1 
JkMount /*/servlet/ worker1 

Starting with mod_jk 1.2.6, and under Apache 2.0, it’s possible to exclude some URL/URI from jk processing by setting the env var no-jk, for example with the SetEnvIf Directive. 
开始在apache2.0下使用mod_jk1.2.6,可以通过设置no-jk环境变量,把一些url/uri排除在jk处理以外,比如用SetEnvIf语句. 
你可以使用no-jk 环境变量解决当jk和alias/userdir URL匹配时,mod_alias或mod_userdir存在的问题. 

# 除了 /home所有的url转向tomcat. 

ServerName testxxx.mysys 
DocumentRoot /www/testxxx/htdocs 

# 使用 SetEnvIf 来设置 当遇到/home/时 no-jk. 
SetEnvIf Request_URI /home/* no-jk 

# 现在 /home 将变成 /home/dataxxx/ 
Alias /home /home/dataxxx/ 

Options Indexes MultiViews 
AllowOverride None 
Order allow,deny 
Allow from all 

JkMount /* myssys-xxx 

JkAutoAlias命令映射应用程序上下文文件夹在apache的文档空间. 

试着访问在一个tomcat Host appBase(webapps)中的web应用程序上下文或者Web档案 *.war WEB-INF 或 META-INF 目录 将返回一个HTTP 403, Access Forbidden 失败. 

# 静态内容由apache提供服务. 
JkAutoAlias /var/tomcat3/webapps 
JkMount /*.jsp ajp13 
JkMount /*/servlet/ ajp13 

转载于:https://my.oschina.net/zbrxtpgyaps/blog/28135

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值