📄 mod_proxy_ajp.html.ja.euc-jp
字号:
<?xml version="1.0" encoding="EUC-JP"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"><head><!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_proxy_ajp - Apache HTTP サ〖バ</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<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>
<p class="apache">Apache HTTP サ〖バ バ〖ジョン 2.2</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP サ〖バ</a> > <a href="http://httpd.apache.org/docs/">ドキュメンテ〖ション</a> > <a href="../">バ〖ジョン 2.2</a> > <a href="./">モジュ〖ル</a></div>
<div id="page-content">
<div id="preamble"><h1>Apache モジュ〖ル mod_proxy_ajp</h1>
<div class="toplang">
<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>
<table class="module"><tr><th><a href="module-dict.html#Description">棱汤:</a></th><td><code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> で AJP
をサポ〖トするためのモジュ〖ル</td></tr>
<tr><th><a href="module-dict.html#Status">ステ〖タス:</a></th><td>Extension</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">モジュ〖ル急侍灰:</a></th><td>proxy_ajp_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">ソ〖スファイル:</a></th><td>proxy_ajp.c</td></tr></table>
<h3>车妥</h3>
<p>塑モジュ〖ルには <code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> が<em>涩妥です</em>。
<code>Apache JServ Protocol version 1.3</code> (笆惯 <em>AJP13</em>)
をサポ〖トします。</p>
<p><code>AJP13</code> プロトコルを胺えるようにするには
<code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code> と <code class="module"><a href="../mod/mod_proxy_ajp.html">mod_proxy_ajp</a></code>
をサ〖バに寥み哈む涩妥があります。</p>
<div class="warning"><h3>焚桂</h3>
<p><a href="#access">奥链なサ〖バにする</a>までプロクシ怠墙は铜跟にしないでください。
オ〖プンプロキシサ〖バはあなた极咳のネットワ〖クにとっても、
インタ〖ネット链挛にとっても错副です。</p>
</div>
</div>
<div id="quickview"><h3 class="directives">ディレクティブ</h3>
<p>このモジュ〖ルにディレクティブはありません。</p>
<h3>トピック</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#overviewprotocol">プロトコルの车妥</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#basppacketstruct">答塑パケット菇陇</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#rpacetstruct">リクエストパケット菇陇</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#resppacketstruct">レスポンスパケット菇陇</a></li>
</ul><h3>徊救</h3>
<ul class="seealso">
<li><code class="module"><a href="../mod/mod_proxy.html">mod_proxy</a></code></li>
</ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="overviewprotocol" id="overviewprotocol">プロトコルの车妥</a></h2>
<p><code>AJP13</code> プロトコルはパケット回羹です。
材粕なプレ〖ンテキスト妨及ではなくバイナリ妨及になったのは、
おそらくパフォ〖マンス惧の妄统によります。
ウェブサ〖バはサ〖ブレットコンテナと TCP コネクションで奶慨します。
ソケット栏喇は脚い借妄なので、砷操を负らすために、サ〖ブレットコンテナとの
TCP 儡鲁を拜积し、剩眶のリクエストˇレスポンス借妄サイクルに滦して办つの
コネクションを蝗いまわすようになっています。</p>
<p>あるリクエストにコネクションが充り碰てられると、その借妄サイクルが
窗位するまで戮のものに蝗われることはありません。
つまりコネクション惧では、リクエストの票箕借妄は乖われません。
このため、コネクション尉眉での悸乖するコ〖ドを词烽にできる办数で、
票箕に倡くコネクションは驴くなっています。</p>
<p>サ〖ブレットコンテナへのコネクションを倡いた稿は、コネクションの觉轮は
肌のどれかになります:</p>
<ul>
<li> Idle <br />コネクション惧で借妄されているリクエストはありません。</li>
<li> Assigned <br />コネクションはリクエストを借妄面です。</li>
</ul>
<p>コネクションが泼年のリクエストにアサインされると、答塑弄な攫鼠 (毋えば
HTTP ヘッダ霹) が暗教された妨 (毋えば奶撅の矢机误は腊眶にエンコ〖ドされます)
で啪流されます。拒嘿は布淡の≈リクエストパケットの菇陇∽を徊救してください。
リクエストにボディが赂哼 <code>(content-length > 0)</code> すれば、
答塑弄な攫鼠の木稿に侍パケットで啪流されます。</p>
<p>この箕爬でおそらく、サ〖ブレットコンテナは借妄を倡幌できるようになります。
ですので、肌のメッセ〖ジをウェブサ〖バに提して梦らせられるようになります。</p>
<ul>
<li>SEND_HEADERS <br />ブラウザにヘッダを流慨します。</li>
<li>SEND_BODY_CHUNK <br />ブラウザにボディデ〖タのチャンクを流ります。
</li>
<li>GET_BODY_CHUNK <br />リクエストのデ〖タを链て减け艰り姜わっていないときに、
荒っているデ〖タを减け艰ります。パケットにある年まった呵络墓があり、扦罢の
络きさのデ〖タがリクエストのボディとして崔まれうる眷圭
(毋えばファイルのアップロ〖ドの眷圭) に涩妥となります。
(庙: HTTP のチャンク啪流とは簇息ありません。)</li>
<li>END_RESPONSE <br />リクエスト借妄サイクルを姜位します。</li>
</ul>
<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="basppacketstruct" id="basppacketstruct">答塑パケット菇陇</a></h2>
<p>このプロトコルには XDR から减け费いだ婶尸が警しありますが、驴くの爬で
佰なります (毋えば 4 バイトアライメントでないことなど) 。</p>
<p>バイトオ〖ダ〖: 改」のバイトのエンディアンがどうなっているかは、
讳は拒しくないのですが、リトルエンディアンになっていると蛔います。
XDR 慌屯でそうなっているのと、燎啦らしいことに sys/socket ライブラリが
(C で) そういう慎にできているのでそうなのだと蛔いました。
ソケット钙び叫しの柒婶についてより拒しい数がいらっしゃいましたら、
ご兜鉴ください。</p>
<p>プロトコルには 4 つのデ〖タタイプがあります: byte, boolean,
integer, string です。</p>
<dl>
<dt><strong>Byte</strong></dt><dd>バイト办つです。</dd>
<dt><strong>Boolean</strong></dt>
<dd>バイト办つで、<code>1 = true</code>, <code>0 = false</code> です。
(C のように) 润雾を靠として胺ってしまうと、ある眷圭は瓢くかもしれませんし、
瓢かないかもしれません。</dd>
<dt><strong>Integer</strong></dt>
<dd><code>0 から 2^16 (32768)</code> の认跋の眶机。光肌の 2 バイトが
黎に呈羌されます。</dd>
<dt><strong>String</strong></dt>
<dd>材恃墓の矢机误 (2^16 が墓さの惧嘎) 。墓さ攫鼠のパケット 2 バイトの稿に
矢机误 (姜眉矢机 '\0' を崔む) が鲁く妨及でエンコ〖ドされます。
エンコ〖ドされている墓さ攫鼠は呵稿の '\0' を<strong>カウントしない</strong>
ことに庙罢してください〗〗これは <code>strlen</code> と票屯です。
これらの姜眉矢机をスキップするために、あまり罢蹋の痰いインクリメント矢
をたくさん今かないといけないのは、
Java の娄から斧ると警し识らわしく炊じられるかもしれません。
こうなった妄统はおそらく、Servlet コンテナから手される矢机误を粕み叫す箕に、
跟唯よく C のコ〖ドを今けるようにする〗〗サ〖ブレットから手される
矢机误は \0 矢机で姜眉されているので、C のコ〖ドではわざわざコピ〖をせずに、
办つのバッファへのリファレンスを艰り搀すように今くことができる〗〗
ためだと蛔われます。
'\0' 矢机がない眷圭は、C では矢机误の惮搂に圭うようにコピ〖しなければ
いけなくなってしまいます。</dd>
</dl>
<h3>パケットサイズ</h3>
<p>驴くのコ〖ドでそうなっているのですが、パケットサイズの呵络サイズは
<code>8 * 1024 (8K)</code> です。パケットの悸狠の墓さはヘッダに
エンコ〖ドされて掐っています。</p>
<h3>パケットヘッダ</h3>
<p>サ〖バからコンテナに流叫されるパケットは <code>0x1234</code> で幌まります。
コンテナからサ〖バに流られるパケットは <code>AB</code> (ASCII コ〖ド A と
ASCII コ〖ド B) で幌まります。この企バイトの稿に、ペイロ〖ド墓が (惧淡の妨及で)
鲁きます。このため、ペイロ〖ド墓の呵络猛は 2^16 にできるように蛔えますが、
悸狠にはコ〖ドでは呵络猛は 8K に肋年されています。</p>
<table>
<tr>
<td colspan="6"><em>パケット妨及 (Server->Container)</em></td>
</tr>
<tr>
<td>Byte</td>
<td>0</td>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4...(n+3)</td>
</tr>
<tr>
<td>Contents</td>
<td>0x12</td>
<td>0x34</td>
<td colspan="2">デ〖タ墓 (n)</td>
<td>Data</td>
</tr>
</table>
<table>
<tr>
<td colspan="6"><em>パケット妨及 (Container->Server)</em></td>
</tr>
<tr>
<td>Byte</td>
<td>0</td>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4...(n+3)</td>
</tr>
<tr>
<td>Contents</td>
<td>A</td>
<td>B</td>
<td colspan="2">デ〖タ墓 (n)</td>
<td>Data</td>
</tr>
</table>
<p>ほとんどのパケットで、ペイロ〖ドの呵介のバイトがメッセ〖ジの房をエンコ〖ド
しています。毋嘲はサ〖バからコンテナに流られるリクエストボディパケットです
〗〗これらは筛洁弄なパケット妨及 (<code>0x1234</code> とパケット墓)
ですが、その稿に鲁くプレフィックスコ〖ドがありません。</p>
<p>ウェブサ〖バは肌のメッセ〖ジをサ〖ブレットコンテナに流叫できます。</p>
<table>
<tr>
<td>コ〖ド</td>
<td>パケットの房</td>
<td>罢蹋</td>
</tr>
<tr>
<td>2</td>
<td>Forward Request</td>
<td>リクエスト借妄サイクルを稿鲁のデ〖タとともに倡幌する。</td>
</tr>
<tr>
<td>7</td>
<td>Shutdown</td>
<td>ウェブサ〖バがコンテナに、コンテナを姜位するように帕える。</td>
</tr>
<tr>
<td>8</td>
<td>Ping</td>
<td>ウェブサ〖バがコンテナに扩告を减け积つように帕える
(セキュアログインフェ〖ズ) 。</td>
</tr>
<tr>
<td>10</td>
<td>CPing</td>
<td>ウェブサ〖バがコンテナに CPong で篓郝に炳批するように帕える。</td>
</tr>
<tr>
<td>none</td>
<td>Data</td>
<td>サイズ (2 バイト) とそれに鲁くボディデ〖タ。</td>
</tr>
</table>
<p>答塑弄なセキュリティを澄瘦するため、ホストされているマシンと票办の
マシンからのリクエストに滦してのみ、コンテナは悸狠に <code>Shutdown</code>
を悸乖します。</p>
<p>呵介の <code>Data</code> パケットは、<code>Forward Request</code>
の木稿にウェブサ〖バから流られます。</p>
<p>サ〖ブレットコンテナはウェブサ〖バに、肌のタイプのメッセ〖ジを流ることが
できます :</p>
<table>
<tr>
<td>コ〖ド</td>
<td>パケットの房</td>
<td>罢蹋</td>
</tr>
<tr>
<td>3</td>
<td>Send Body Chunk</td>
<td>サ〖ブレットコンテナからウェブサ〖バに
(そしておそらくそのままブラウザに)、ボディのチャンクを流る。</td>
</tr>
<tr>
<td>4</td>
<td>Send Headers</td>
<td>サ〖ブレットコンテナからウェブサ〖バに (そしておそらくそのままブラウザに)
レスポンスヘッダを流る。</td>
</tr>
<tr>
<td>5</td>
<td>End Response</td>
<td>レスポンス (つまりリクエスト借妄サイクル) 姜位の誊磅を流る。
</td>
</tr>
<tr>
<td>6</td>
<td>Get Body Chunk</td>
<td>まだ链て啪流されていない眷圭、荒っているリクエストのデ〖タを减け艰る。
</td>
</tr>
<tr>
<td>9</td>
<td>CPong 炳批</td>
<td>CPing リクエストに炳批する。</td>
</tr>
</table>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -