[ubuntu-jp] apache2でcgiの設定

Nobuyuki Inaba nobuyuki.inaba at gmail.com
Mon Oct 16 04:00:28 BST 2006


稲葉です。
ありがとうございます。
apache2のそのままの設定の状態で
/usr/lib/cgi-bin/test.cgiにファイルを作成し、
http://localhost/cgi-bin/test.cgiとしましたら
うまく表示されました。
そこで、testというユーザを登録し、
/home/test/public_html
というフォルダを作成し、
http://localhost/~test/cgi-bin/test.cgi
としてうまく表示されるのを期待したのですが、表示されません。
Not Found

The requested URL /~ichiko/cgi-bin/hello-ruby.cgi was not found on this server.
Apache/2.0.55 (Ubuntu) Server at localhost Port 80
と表示されます。

すみませんが、この解決方法を御存じでしたら教えていただけないでしょうか。

追伸:
apache2.confの
#AddHandler cgi-script .cgi
の#をはずして、
/etc/apache2/site-available/default
の<Directory /var/www/>
のOptionsにExecCGI を追加を変更すればよいように見受けられる気もしますが、
小林さんのいうセキュリティホールの危険性があるように思えるので、
それはできるだけやらないようにしたいと思っています。

> 小林です。
> Ubuntuのapache2パッケージでは、初期状態で /usr/lib/cgi-bin
> 以下のファイルのみ、CGIとして実行されるようになっています。
>
> そのため、/usr/lib/cgi-bin/test.cgi としてファイルを作成し、
> 実行権をつけ、http://ホスト名/cgi-bin/test.cgi としてアクセス
> するとうまくいくはずです。
>
> 他のディレクトリにCGIファイルを置くことができないわけでは
> ありませんが、注意して設定しないとセキュリティホールとなって
> しまうこともあります。
>
> Apache2のCGI設定については、以下のページが参考になると思います。
>
> http://httpd.apache.org/docs/2.0/howto/cgi.html
>
> Ubuntuのapache2パッケージを使った場合に、ScriptAliasがどこで設定
> されるかは、/etc/apache2以下のファイルをgrepすれば見つかるはずです。
>
> --
> Jun Kobayashi
>
>



More information about the ubuntu-jp mailing list