はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/05/30
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 当サイト情報 >> スレッド

このページは表示専用です。新規投稿・レスや最新情報はこちらです。

 CGI下のファイルにアクセスできない
日時: 2007/04/04 17:12
名前: えん

?不明点・障害内容:

CGIディレクトリ下においたプログラムで、ファイルを開いたり書いたりといったことができません。
具体的には、C言語でファイルをオープンするプログラム(下記参照)を書きました。
そして、エラーならメッセージHTMLを出すようにしています。
しかし、http://server/cgi-bin/test.cgiにアクセスすると、
File Not Open !!! と表示されてしまいます。コンソールで直接a.outを実行しても同じです。
test.datは同ディレクトリに存在します。
test.datがあるディレクトリのパーミッションは、755で、test.datは666としています。

ちなみに、test.dat を/var/www/html/の下に置いて、プログラムもそれに合わせてパスを書き直し、
コンソールからa.outを実行するとファイルオープンできます。
どうすれば、CGIディレクトリ下のまま、test.datにアクセスできるようになるのでしょうか?

#include <stdio.h>
int main()
{
 FILE *fp;

 fp=fopen("test.dat","r");
 if(fp==NULL){
  puts("Content-type: text/html\n\n");
  puts("<html>");
  puts("<body>");
  puts("File Not Open !!!");
  puts("</body>");
  puts("</html>");
 }
 else{
  fclose(fp);
 }
 return 0;
}


?Distribution  :
      Version:CENTOS 4.4 + SELINUX + FireWall
?Service Name  :Apache 2
      Version:

■ コンテンツ関連情報

 Re: CGI下のファイルにアクセスできない ( No.1 )
日時: 2007/04/04 18:45
名前: えん

SELINUXを停止させると、アクセスできるようになりました。
セキュリティー向上のためなのだと思います。

そこで、SELINUXを停止させずに、SELINUXの設定を変えて、
cgi-bin以下に対してもファイルアクセスできるようにするには、
どうすればよいでしょうか?

また、cgi-binディレクトリ下にファイルアクセスできるようにしておくことは、危険なのでしょうか?
SELINUXが動作していない環境では、一般的にはアクセスできるわけですよね?
 Re: CGI下のファイルにアクセスできない ( No.2 )
日時: 2007/04/04 21:30
名前: 管理者

SElinuxは殆どの方がネックとなっている問題ですね。
(当方もその一人です。従って、SElinuxは無効にしています。)

概要についてはご存知かも知れませんがSElinuxは機能の一部として、ポリシに従っていない物は排除するという物です。
当方は皆無に近い知識しかありませんが、SELinuxのポリシーに基づいたラベル付を行わなければ今回の様に実行が出来ません。

どの様にポリシを作成しラベル付けをするかは分かりませんが「SElinux ラベル付け」等で検索すれば多々検索出来るのでご覧になって見てください。

■ その他

ページ先頭へ


Copyright(©)2004-2018 First home server construction. All Right Reserved.