基本的には publisher をたてて、
Apache で reverse proxy をするだけ。
注意が必要なのは 2 点だけ。
1. publisher 側で pkg/proxy_base を設定する
2. Apache 側で 'AllowEncodedSlashes NoDecode' が必要
1 は以下のような形
sudo svccfg -s svc:/application/pkg/server:nightly_public \ setprop pkg/proxy_base = astring: http://pkg.opensolaris.gr.jp/solaris11/nightly
(仮構築なので、URL は変わる可能性がある)
2 は以下のような形
AllowEncodedSlashes NoDecode ProxyPass /solaris11/nightly/ http://127.0.0.1:10001/ nocanon ProxyPassReverse /solaris11/nightly/ http://127.0.0.1:10001/
'AllowEncodedSlashes NoDecode' がないと、こんな感じで 404 になる。
[Thu Nov 20 12:55:53 2014] [info] [client 211.7.88.204] found %2f (encoded '/') in URI (decoded='/solaris11/jposug-nightly/info/0/pkg://jposug-nightly/database/berkeleydb-48/[email protected],5.11-0.0.175.2.0.0.42.0:20141120T025142Z'), returning 404, referer: http://120.137.170.91/solaris11/jposug-nightly/en/catalog.shtml
ref.
- IPS Knowledge - OpenIndiana - OpenIndiana Wiki
http://wiki.openindiana.org/oi/IPS+Knowledge