rpmパッケージのメタ情報の表示

オフィスのファイル置き場になってるウェブサーバで、rpmパッケージのメタ情報が表示される仕組みを作った。
Rewriteは以下のような感じでphpに飛ばすけど、phpで生成したページから本当にrpmをダウンロード出来ないと困るので、HTTP_REFERERでRewriteを制限。HTTP_USER_AGENTはAnacondaとかが困らないように^Mozillaだけ。

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_USER_AGENT}   ^Mozilla
RewriteCond %{HTTP_REFERER}  /$
RewriteRule \.rpm$ rpm.php

ページを生成するphpでは、DLするためのリンク、そのrpmのソースコードへのリンク(オフィス内の別のサーバ)、rpmコマンドの各種クエリへのリンクを張って、サーバ上でrpmパッケージに対してrpmコマンドを実行させたりする、と。rpm -qplの中のmanファイルはオンラインで表示出来るように、これもサーバ上でrpm2cpio、cpio、gunzip、groffを実行する。さらに、rpm -qp –changelog中のBugzillaへのリンクも入れ込んで、一応完成。

これ、一度作ると、rpmパッケージをウェブサーバ上に置くだけでメタデータが表示出来るようになるので、結構便利。なんか、誰かが作ってそうだけど、思いついてサクサクっと出来ちゃったので、これで良いか(^^ゞ

タイトルとURLをコピーしました