mod_proxy_ajp.html.ja.euc-jp
来自「apache服务器源代码(版本号:2.2.2)」· EUC-JP 代码 · 共 542 行 · 第 1/2 页
EUC-JP
542 行
<p>惧淡メッセ〖ジは、それぞれ柒婶菇陇が佰なっています。拒嘿は布淡をご枉ください。 </p> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2><a name="rpacetstruct" id="rpacetstruct">リクエストパケット菇陇</a></h2> <p>サ〖バからコンテナへ流られるメッセ〖ジが <em>Forward Request</em> 房の眷圭 :</p> <div class="example"><pre>AJP13_FORWARD_REQUEST := prefix_code (byte) 0x02 = JK_AJP13_FORWARD_REQUEST method (byte) protocol (string) req_uri (string) remote_addr (string) remote_host (string) server_name (string) server_port (integer) is_ssl (boolean) num_headers (integer) request_headers *(req_header_name req_header_value) attributes *(attribut_name attribute_value) request_terminator (byte) OxFF </pre></div> <p><code>request_headers</code> は肌のような菇陇になっています : </p><div class="example"><pre>req_header_name := sc_req_header_name | (string) [see below for how this is parsed]sc_req_header_name := 0xA0xx (integer)req_header_value := (string)</pre></div> <p><code>掳拉</code> はオプションで、肌のような菇陇をしています :</p> <div class="example"><pre>attribute_name := sc_a_name | (sc_a_req_attribute string)attribute_value := (string) </pre></div> <p>もっとも脚妥なヘッダは <code>content-length</code> だということに 庙罢してください。コンテナは肌のパケットを玫すかどうかを、 それを斧て疯めるからです。</p> <h3>Forward Request 妥燎の拒嘿な棱汤 </h3> <h3>Request prefix</h3> <p>リクエストについては链て、この猛は 2 になります。戮の Prefix コ〖ドの拒嘿は 惧淡をご枉ください。</p> <h3>Method</h3> <p>HTTP メソッドは 1 バイトにエンコ〖ドされます :</p> <table> <tr><td>Command Name</td><td>Code</td></tr> <tr><td>OPTIONS</td><td>1</td></tr> <tr><td>GET</td><td>2</td></tr> <tr><td>HEAD</td><td>3</td></tr> <tr><td>POST</td><td>4</td></tr> <tr><td>PUT</td><td>5</td></tr> <tr><td>DELETE</td><td>6</td></tr> <tr><td>TRACE</td><td>7</td></tr> <tr><td>PROPFIND</td><td>8</td></tr> <tr><td>PROPPATCH</td><td>9</td></tr> <tr><td>MKCOL</td><td>10</td></tr> <tr><td>COPY</td><td>11</td></tr> <tr><td>MOVE</td><td>12</td></tr> <tr><td>LOCK</td><td>13</td></tr> <tr><td>UNLOCK</td><td>14</td></tr> <tr><td>ACL</td><td>15</td></tr> <tr><td>REPORT</td><td>16</td></tr> <tr><td>VERSION-CONTROL</td><td>17</td></tr> <tr><td>CHECKIN</td><td>18</td></tr> <tr><td>CHECKOUT</td><td>19</td></tr> <tr><td>UNCHECKOUT</td><td>20</td></tr> <tr><td>SEARCH</td><td>21</td></tr> <tr><td>MKWORKSPACE</td><td>22</td></tr> <tr><td>UPDATE</td><td>23</td></tr> <tr><td>LABEL</td><td>24</td></tr> <tr><td>MERGE</td><td>25</td></tr> <tr><td>BASELINE_CONTROL</td><td>26</td></tr> <tr><td>MKACTIVITY</td><td>27</td></tr> </table> <p>海稿の ajp13 バ〖ジョンでは、この办枉にない、海稿纳裁されるメソッドを 流るかもしれません。</p> <h3>protocol, req_uri, remote_addr, remote_host, server_name, server_port, is_ssl</h3> <p>これらはまさに矢机奶りのものです。どれも涩妥で、リクエストの髓搀につき 流られます。</p> <h3>Headers</h3> <p><code>request_headers</code> の菇陇は肌のようなものです : まずヘッダの眶 <code>num_headers</code> がエンコ〖ドされます。 肌にヘッダ叹 <code>req_header_name</code> / 猛 <code>req_header_value</code> の寥が鲁きます。跟唯のため、办忍弄なヘッダは腊眶でエンコ〖ドして啪流します。 ヘッダ叹が答塑ヘッダの办枉に痰い眷圭は、奶撅奶り (矢机误として、墓さ プレフィックス烧きで) 啪流されます。办忍弄なヘッダ <code>sc_req_header_name</code> の办枉とそのコ〖ドは肌の奶りです (どれも络矢机井矢机を惰侍します) :</p> <table> <tr><td>叹涟</td><td>コ〖ドの猛</td><td>コ〖ド叹</td></tr> <tr><td>accept</td><td>0xA001</td><td>SC_REQ_ACCEPT</td></tr> <tr><td>accept-charset</td><td>0xA002</td><td>SC_REQ_ACCEPT_CHARSET </td></tr> <tr><td>accept-encoding</td><td>0xA003</td><td>SC_REQ_ACCEPT_ENCODING </td></tr> <tr><td>accept-language</td><td>0xA004</td><td>SC_REQ_ACCEPT_LANGUAGE </td></tr> <tr><td>authorization</td><td>0xA005</td><td>SC_REQ_AUTHORIZATION</td> </tr> <tr><td>connection</td><td>0xA006</td><td>SC_REQ_CONNECTION</td></tr> <tr><td>content-type</td><td>0xA007</td><td>SC_REQ_CONTENT_TYPE</td> </tr> <tr><td>content-length</td><td>0xA008</td><td>SC_REQ_CONTENT_LENGTH</td> </tr> <tr><td>cookie</td><td>0xA009</td><td>SC_REQ_COOKIE</td></tr> <tr><td>cookie2</td><td>0xA00A</td><td>SC_REQ_COOKIE2</td></tr> <tr><td>host</td><td>0xA00B</td><td>SC_REQ_HOST</td></tr> <tr><td>pragma</td><td>0xA00C</td><td>SC_REQ_PRAGMA</td></tr> <tr><td>referer</td><td>0xA00D</td><td>SC_REQ_REFERER</td></tr> <tr><td>user-agent</td><td>0xA00E</td><td>SC_REQ_USER_AGENT</td></tr> </table> <p>これを粕み哈む Java のコ〖ドでは、呵介の 2 バイト腊眶を艰り哈み、 誊磅になるバイト <code>'0xA0'</code> であれば、ヘッダ叹の芹误の インデックスを蝗います。黎片バイトが <code>0xA0</code> でない眷圭は、 黎片 2 バイトは矢机误墓を山す腊眶であると豺坚し、粕み哈みはじめます。</p> <p>ヘッダ叹の墓さは <code>0x9999 (==0xA000 -1)</code> 笆惧にならないという 簿年の布に瓢いていて、警しあいまいですが圭妄弄な刁瓢になっています。</p> <div class="note"><h3>庙:</h3> <code>content-length</code> ヘッダはとても脚妥です。 赂哼していて润ゼロであれば、リクエストにはボディがある (毋えば POST リクエスト) と夸卢し、そのボディを艰り哈むために 木稿のパケットを掐蜗ストリ〖ムから粕み哈みはじめます。 </div> <h3>掳拉</h3> <p><code>?</code> プレフィックスで幌まる掳拉 (毋 <code>?context</code>) は。臼维材墙です。それぞれ掳拉の房を绩す 1 バイトのコ〖ドと、 猛の矢机误が鲁きます。 これらは界稍票で流ることができます (C のコ〖ドは撅に布の办枉界に 流るようですが) 。 オプションの掳拉のリストの呵稿には、泼侍な姜位コ〖ドが流られます。 コ〖ドの办枉は : </p> <table> <tr><td>Information</td><td>Code Value</td><td>Note</td></tr> <tr><td>?context</td><td>0x01</td><td>踏悸刘 </td></tr> <tr><td>?servlet_path</td><td>0x02</td><td>踏悸刘 </td></tr> <tr><td>?remote_user</td><td>0x03</td><td /></tr> <tr><td>?auth_type</td><td>0x04</td><td /></tr> <tr><td>?query_string</td><td>0x05</td><td /></tr> <tr><td>?jvm_route</td><td>0x06</td><td /></tr> <tr><td>?ssl_cert</td><td>0x07</td><td /></tr> <tr><td>?ssl_cipher</td><td>0x08</td><td /></tr> <tr><td>?ssl_session</td><td>0x09</td><td /></tr> <tr><td>?req_attribute</td><td>0x0A</td><td>Name (the name of the attribute follows)</td></tr> <tr><td>?ssl_key_size</td><td>0x0B</td><td /></tr> <tr><td>are_done</td><td>0xFF</td><td>request_terminator</td></tr> </table> <p><code>context</code> と <code>servlet_path</code> は附哼の C の コ〖ドではセットされていません。また、ほとんどの Java のコ〖ドでも、 このフィ〖ルドで部が流られても痰浑されます (これらのコ〖ドの稿に矢机误が 流られると蝉れるものもあります)。 これがバグなのか、帽に踏悸刘なのか、悟凰弄沸稗で荒っているコ〖ドなのか 尸かりませんが、コネクションの尉娄ともで斧碰たりません。</p> <p><code>remote_user</code> と <code>auth_type</code> はおそらく HTTP レベルの千沮を徊救していて、リモ〖トユ〖ザのユ〖ザ叹と千沮に蝗脱した タイプ (毋 Basic, Digest) についてやり艰りします。</p> <p><code>query_string</code>, <code>ssl_cert</code>, <code>ssl_cipher</code>, <code>ssl_session</code> は HTTP と HTTPS の滦炳する婶尸を徊救します。</p> <p><code>jvm_route</code> はスティッキ〖セッションのサポ〖ト〗〗 ロ〖ドバランスしている剩眶のサ〖バ面の泼年の Tomcat インスタンスと、 ユ〖ザのセッションとを沙烧ける怠墙〗〗に蝗われます。</p> <p>この答塑掳拉办枉に痰いものについては、<code>req_attribute</code> コ〖ド <code>0x0A</code> 沸统で掳拉を部改でも流ることができます。 掳拉の叹涟と猛の矢机误の寥を、それぞれこのコ〖ドの木稿に流ります。 茨董恃眶はこの数恕で帕えられます。</p> <p>呵稿に掳拉が链て流慨された稿に、掳拉の姜眉を绩す <code>0xFF</code> が流叫されます。この慨规は掳拉の办枉の姜わりを绩すと票箕に、リクエスト パケットの姜眉をも绩しています。</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2><a name="resppacketstruct" id="resppacketstruct">レスポンスパケット菇陇</a></h2> <p>コンテナがサ〖バに流り手すことのできるメッセ〖ジ:</p> <div class="example"><pre>AJP13_SEND_BODY_CHUNK := prefix_code 3 chunk_length (integer) chunk *(byte)AJP13_SEND_HEADERS := prefix_code 4 http_status_code (integer) http_status_msg (string) num_headers (integer) response_headers *(res_header_name header_value)res_header_name := sc_res_header_name | (string) [see below for how this is parsed]sc_res_header_name := 0xA0 (byte)header_value := (string)AJP13_END_RESPONSE := prefix_code 5 reuse (boolean)AJP13_GET_BODY_CHUNK := prefix_code 6 requested_length (integer) </pre></div> <h3>拒嘿 :</h3> <h3>Send Body Chunk</h3> <p>チャンクは答塑弄にはバイナリデ〖タで、ブラウザに木儡流られます。</p> <h3>Send Headers</h3> <p>ステ〖タスコ〖ドとメッセ〖ジが奶撅の HTTP の奶慨にはあります (毋 <code>200</code> と <code>OK</code>)。レスポンスヘッダ叹は、 リクエストヘッダ叹と票屯の数恕でエンコ〖ドされます。 コ〖ドと矢机误の冉侍数恕の拒嘿に簇しては、惧淡の header_encoding を徊救してください。 办忍弄なヘッダのコ〖ドは :</p> <table> <tr><td>叹涟</td><td>コ〖ドの猛</td></tr> <tr><td>Content-Type</td><td>0xA001</td></tr> <tr><td>Content-Language</td><td>0xA002</td></tr> <tr><td>Content-Length</td><td>0xA003</td></tr> <tr><td>Date</td><td>0xA004</td></tr> <tr><td>Last-Modified</td><td>0xA005</td></tr> <tr><td>Location</td><td>0xA006</td></tr> <tr><td>Set-Cookie</td><td>0xA007</td></tr> <tr><td>Set-Cookie2</td><td>0xA008</td></tr> <tr><td>Servlet-Engine</td><td>0xA009</td></tr> <tr><td>Status</td><td>0xA00A</td></tr> <tr><td>WWW-Authenticate</td><td>0xA00B</td></tr> </table> <p>コ〖ドかヘッダ矢机误の木稿には、ヘッダの猛がエンコ〖ドされます。</p> <h3>End Response</h3> <p>リクエスト借妄サイクルの姜位を梦らせます。<code>reuse</code> フラグが靠 <code>(==1)</code> の眷圭、附哼蝗脱している TCP コネクションは肌の糠しい リクエストに蝗えるようになります。<code>reuse</code> が刀 (C のコ〖ドでは 1 笆嘲の链て) の眷圭は、コネクションを誓じることになります。</p> <h3>Get Body Chunk</h3> <p>(ボディのサイズが络きすぎて呵介のパケットに箭まらない眷圭や、 リクエストがチャンク啪流された眷圭などには、) コンテナはリクエストからの デ〖タ粕み哈み妥滇をします。サ〖バ娄はそれに滦して、呵井 <code>request_length</code> 呵络 <code>(8186 (8 Kbytes - 6))</code> の认跋で、踏啪流で荒っているリクエストボディの络きさのデ〖タを 流り手します。<br /> ボディにそれ笆惧デ〖タが荒っていない眷圭 (つまりサ〖ブレットが ボディの呵稿を亩えて粕み哈もうとした眷圭) 、サ〖バは ペイロ〖ド墓 0 の<em>鄂パケット</em><code>(0x12,0x34,0x00,0x00)</code> を流り手します。</p> </div></div><div class="bottomlang"><p><span>Available Languages: </span><a href="../en/mod/mod_proxy_ajp.html" hreflang="en" rel="alternate" title="English"> en </a> |<a href="../ja/mod/mod_proxy_ajp.html" title="Japanese"> ja </a></p></div><div id="footer"><p class="apache">Copyright 1995-2006 The Apache Software Foundation or its licensors, as applicable.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p><p class="menu"><a href="../mod/">モジュ〖ル</a> | <a href="../mod/directives.html">ディレクティブ</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">脱胳</a> | <a href="../sitemap.html">サイトマップ</a></p></div></body></html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?