[PREVIOUS CHAPTER] [NEXT CHAPTER]

8 suEXEC を使う場合

    どうすれば

       http://www.xxx.yyy/~fml/cgi-bin/fml/admin/menu.cgi

    のように CGI にアクセスできるようになるかを説明します。
    基本的に手順は前述の fml CGI 専用機の場合と同様です。

    8.1	ユーザ fml を用意する。

    まず、ユーザ fml を用意します。ユーザ fml の所属するグループは fml と
    しましょう。この fml の uid および gid は suEXEC の制限(ちいさ過ぎる
    UID や GID は禁止)に引っかからないようにして下さい。例えばここで ユー
    ザ fml の uid は 1000、gid 1000 とします。

    8.2	apache で suexec を可能にする。

    suexec のログや /usr/local/apache/logs/error_log を見ながら
    suexec がうごくことを確認して下さい。

    典型的なインストール例は以下の通りです。
    # tar zxvf apache_1.3.14.tar.gz
    # cd apache_1.3.14/
    # ./configure --enable-suexec --suexec-caller=nobody
    # make
    # make install

    おそらく /usr/local/apache/conf/httpd.conf の変更が必要です。例えば、
    この 2 箇所辺りです。config ファイルでの ExecCGI の追加と AddHandler
    の定義について調べて下さい。
    <Directory /home/*/public_html>
        AllowOverride FileInfo AuthConfig Limit
        Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec ExecCGI

    AddHandler cgi-script .cgi

    ExecCGI と AddHandler cgi-script .cgi の部分が特に重要です。

    もし、ホームディレクトリが /home/マシン名/ユーザ名 (例:
    /home/ahodori/fukachan )のようになるなら

    <Directory /home/*/*/public_html>
        AllowOverride FileInfo AuthConfig Limit
        Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec ExecCGI

    AddHandler cgi-script .cgi

    としてください。

    8.3	CGI スクリプトの生成

    次に、ユーザ fml で ~/public_html/ を作って下さい。

    	% su fml
    	% mkdir ~/public_html
    	% chmod 755 ~/public_html

    そして、このディレクトリの下に CGI スクリプトを生成します。

    	% makefml admin.cgi config

    を実行すると以下のメニュー画面になります。

       0     END
       1     USE_MOD_SSL         YES
       2     REAL_CGI_PATH       /usr/local/fml/www/share/cgi-bin/fml
       3     CGI_AUTHDB_DIR      /usr/local/fml/www/authdb
       4     CHANGE PASSWORD
       5     REMAKE CGI SCRIPTS
       6     MTA                 sendmail
       7     HOW TO UPDATE ALIAS newaliases

       which ? (0-7) [0]

    2 を選択し、/home/fukachan/public_html/cgi-bin/fml に変更します。
    次に 4 を実行して、ユーザとパスワードを設定して下さい。
    そして 5 を実行すると

    	~/public_html/cgi-bin/fml/admin/*.cgi

    が生成されます。

    (たぶん必要ないと思いますけど)念には念をいれて

    	% su fml
    	% chown -R fml ~/public_html
    	% chgrp -R fml ~/public_html
    	% chmod -R go-w ~/public_html

    を実行しパーミッションの念押しをしておくとなお良いと思います。

[PREVIOUS CHAPTER] [NEXT CHAPTER]

    Copyright (C) 1993-2000 Ken'ichi Fukamachi
    All rights of this page is reserved.

    # This Document(html format) is automatically geneareted by fwix.pl.
    # fwix (Formatter of WIX Language) is fml document formatter system
    # designed to generate plaintext, html, texinfo and nroff from one file.