Page History
...
Apache
...
Apache サーバーでは、書き換えディレクティブを使用して URL 操作を行う強力な方法が提供されます。Wiki Markup
詳細は、Apache HTTP サーバー・バーション 2.4 の「&<a href=" target="_blank"&>http>http://httpd.apache.org/docs/2.4/mod/mod_rewrite.html"Apache モジュール mod_rewrite&</a&>」を参照してください。
以下の例は、これらの書き換えディレクティブの使用方法を示しています。
例
...
1
書き換えURL:"/myservice.jsp?request=xml&service=neworder" を "/cgi-bin/jsmdirect?neworder" に
サンプル URL: http://10.2.0.170:1099/myservice.jsp?request=xml&service=neworder
URL にサービス名と値のペアが含まれる場合、/cgi-bin/jsmdirect?<値> が呼び出されます。それ以外の場合は、/cgi-bin/jsmdirect?default が呼び出されます。
RewriteCond
...
%
...
{QUERY_STRING
...
}
...
service
...
=(
...
[^
...
&
...
]+)
...
RewriteRule
...
^/myservice.jsp(.*)
...
/cgi-bin/jsmdirect?%1
...
[L,PT
...
]
...
RewriteRule
...
^/myservice.jsp(.*)
...
/cgi-bin/jsmdirect?default
...
[L,PT
...
]
...
RewriteCond は、service= の QUERY_STRING をチェックして、& 以外の値をすべてパラメータ化します。
条件が真の場合、次の RewriteRule を実行します。真でなければこのルールはスキップされ、他のルールが実行されます。 注:を実行します。真でなければこのルールはスキップされ、他のルールが実行されます。
| Info |
|---|
注:
|
...
例
...
2
書き換えURL:" /myservice.jsp?type=2&msgid=AXD&status=NEW" を "/cgi-bin/jsmdirect?myservice+type(2)msgid(AXD)+status(NEW)" に
RewriteRule
...
^/myservice.jsp
...
/myservice.jsp/%
...
{QUERY_STRING
...
}
...
[C
...
]
...
RewriteRule
...
^/myservice.jsp/type=(
...
[
...
^¥&
...
]+)&msgid=(
...
[
...
^¥&
...
]+)&status=(
...
[
...
^¥&
...
]+)
...
¥ /cgi-bin/jsmdirect?myservice+type($1)+msgid($2)+status($3)
...
[L,PT
...
]
...
...
例
...
3
書き換えURL:"/parts/00345" を "/cgi-bin/jsmdirect?orderbind+id(00345)" に
サンプル URL: http://10.2.0.170:1099/parts/00345
RewriteRule
...
^/parts/(.*)
...
/cgi-bin/jsmdirect?orderbind+id($1)
...
[L,PT
...
]
...
...
例
...
4
書き換えURL:"/parts/00345/abc" を "/cgi-bin/jsmdirect?orderbind+id(00345)+item(abc)" に
サンプル URL: http://10.2.0.170:1099/parts/00345/abc
RewriteRule
...
^/parts/(.*)/(.*)
...
/cgi-bin/jsmdirect?orderbind+id($1)+item($2)
...
[L,PT
...
]
...
...
Apache
...
構成ファイルのサンプル
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...
|
...