- PR -

CGIのソースが表示される

投稿者投稿内容
永井和彦
ぬし
会議室デビュー日: 2002/07/03
投稿数: 276
お住まい・勤務地: 東京都
投稿日時: 2004-02-29 00:24
引用:

またCGIファイルに755の権限を付けました。
この状態でCGIの動作を確認した所
ブラウザに下記メッセージが表示され、CGIが実行されませんでした。

Forbidden
You don't have permission to access /boo/cgi-bin2/boo.cgi on this server.
Apache/2.0.40 server at booserver port 80



CGI実体に権限755を付与してなお403と出ているとのことですから、そこに至るまでのディレクトリのアクセス権限で引っ掛かっていると思われます。

%chmod 755 /home/boo/
%chmod 755 /home/boo/cgi-bin2/

とでもすれば動くのではないでしょうか。

[ メッセージ編集済み 編集者: 永井和彦 編集日時 2004-02-29 00:26 ]
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2004-02-29 11:28
Redhat では、ユーザのホームディレクトリはデフォルトで 700 で作成されます。
だから、そのままではいくら cgi スクリプトの所有者を誰に変えようとも、下あるスクリプトは、ユーザ boo しか実行できません。

スクリプトは owner を変えずにユーザ boo でログインし、

$ chmod 701 ~
$ chmod 755 ~/cgi-bin2/boo.cgi

とやってから実行してみてください。

あと、httpd.conf の User 行を変更する必要がありません。
boo
会議室デビュー日: 2004/02/27
投稿数: 9
投稿日時: 2004-02-29 16:04
「kaz」様「永井和彦」様「あんとれ」様
こんにちは、返信有難う御座います。

ご指摘頂きました下記方法をそれぞれ試してみましたが
CGIさんは動いてくれませんでした。
・httpdの実行ユーザを変更する方法
・CGIディレクトリまで至るフォルダのアクセス権限変更
・booでログインしてからアクセス権限変更

最初からもう一度設定を見直していましたら、お伝えすべき
情報に漏れが御座いました。
実は、このbooユーザフォルダのリンクを作成して
/var/www/htmlの直下にリンクをコピーしておりました。


そして、httpd.confの<Directory /var/www/html>内に
ExecCGIを追加しましたら、動かなかったCGIが動いてくれました。
<Directory /var/www/html>
 Options Indexes Includes FollowSymLinks ExecCGI
 AllowOverride None
 Allow from all
 Order allow,deny
</Directory>


自分がやりたかった方法と、ちょっと違うような気がするのですが。。。
このままで作業を進めてみようと思います。
返信頂きました皆様のご助言、大変勉強になりました!
どうも有難う御座いました。

スキルアップ/キャリアアップ(JOB@IT)