パスワードを忘れた? アカウント作成
747448 journal

Maxの日記: mod_frontpage ほげ *動作*

日記 by Max

/var/log/httpd/fpexec_log を見ると、

user mismatch (fpapache instead of apache)

とある。ビルド時に指定されているか、もしくはハードコード(げ)されている
可能性があるので、ソースrpmをとってきて調べることにする。

# rpm --ivh mod_frontpage-1.5.1mdk-3.src.rpm
# cd /usr/src/RPM/SPECS
# rpm -ba mod_frontpage.spec | less
[snip]
Reading httpd.conf...
Apache user: apache, group: apache
[snip]

ぐは(嘔吐
ダメスギ。粗雑スギ。さらに/etc/httpd/conf/httpd.confを書き換えても、上記は変わらない。
どこを見ているのだろうと思ったら/etc/httpd/conf/commonhttpd.confを見ている。
/usr/src/RPM/BUILD/mod_frontpage-1.5.1mdk-1.3.19/DSO/Makefile.PLに、そういう
記述がある。
が、これを有効にするとFP2K SEをインストールするときに蹴られる。

結果として、使いもしないcommonhttpd.confも矛盾なく設定せねばならぬということになる。

手順を整理すると、

  1. uid/gid&>=100となるようなユーザを作成
    ex) # adduser -M fpapache
  2. /var/www/html以下のオーナをそのユーザにする

    ex) # chown -R fpapache:fpapache /var/www/html

  3. /etc/httpd/conf/httpd.confおよび、/etc/httpd/conf/commonhttpc.confを目的の動作にあった形で設定
  4. mod_frontpageのソースrpmをダウンロードする
  5. rpm -ivh ほげほげ
  6. SPECディレクトリで rpm -ba ほげほげ
  7. できあがったrpmをインストールする
  8. httpd.confにcommonhttpd.confを併合する(以降commonhttpd.confは使わない)
  9. RTR社のサイトからFP2K SEを取り込んで/usr/local/frontpage以下に展開
  10. /usr/local/frontpage/version4.0/bin/fpsrvadm.exeでルートwebにFP2K SEをインストールする(unix user/group=fpapache/fpapache)
  11. apache再起動
  12. WindowsのFrontPageクライアントを起動し、ルートwebを開いてみる
    これでうまくいけばOK

という実にヤヤコシイ手順となるのであった。
なお、BUILDディレクトリ以下に展開されるmod_frontpageのインストール説明書
では、

Notice: If you use RedHat Linux, your UNIX user "nobody" and UNIX group
                      "nobody" do have a UID/GID of "99". Therefore, you shoud use:

                      --fpexec-uidmin=99
                      --fpexec-gidmin=99

という記述もある。ここをそれぞれ48にすれば、User/Group = apache/apacheで
動作すると思われるが、危なそうなので問題が出ない限り、apacheを実行するUser/Group
を変更することで対処することにする。

しかしだ。それにしてもだ・・・・(泣

typodupeerror

未知のハックに一心不乱に取り組んだ結果、私は自然の法則を変えてしまった -- あるハッカー

読み込み中...