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

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

このスレッドはクローズされています。記事の閲覧のみとなります。

 cgiのmkdirに関しての質問
日時: 2007/05/29 11:37
名前: TAKE

いつもこちらの掲示板で勉強させていただいております。
何とかサーバーを構築でき、問題なくHPも表示できるようになりました。

今回質問したいのは、ブラウザからのCGI操作でファイルやディレクトリが作成できるようにしたいのですが、
Mkdirがうまく作動してくれません。
他のCGI(掲示板など)は作動しております。

まずテストとしてネットから拾いましたソースで確認してみました。

-------- ここから -----------

#!/usr/local/bin/perl

#// 準備
 $fname = 'test.txt';
 $cufld = '.';
 $dbfld = '/w_test/';
 $path = $ENV{'PATH_INFO'};

#// 動作環境セット
 if (($i = index($path, $dbfld)) != -1) {
  $cufld = '..' . substr($path, $i, $i + length($dbfld) - 1);
 }

#// ファイル書き込み
 open(FILE, ">$cufld/$fname") or die;
 print FILE 'やっほ〜。', "\n";
 print FILE 'うまくライトできるかしらん。(^^)', "\n";
 close(FILE);

#// ファイル読み込み
 open(FILE, "$cufld/$fname") or die;
 @rec = <FILE>;
 close(FILE);

#// HTML ヘッド出力
 print "Content-type: text/html\n\n";
 print "<HTML>\n";
 print "<P>-- 標準ファイル入出力テスト --</P>\n";

#// レコード表示
 foreach (@rec) {
  print $_, '<BR>';
 }

#// HTML テイル出力
 print "</HTML>\n";

#// 終了
 exit(0);

---------- ここまで  --------------

実行すると500エラーがでます。
また先にtest.txtを作成してサーバーにおいて置くとファイルに書き込みできます。

おそらくファイル作成とディレクトリの作成は関連があるとおもうのですが、
書籍やネットではみつけることが出来ませんでした。

何か問題点がございましたらご指摘いただけないでしょうか?
どうぞ宜しくお願い致します。



?不明点・障害内容:CGIをブラウザからの操作でディレクトリを作成できない。
?ログの有無   :無し
  (有:その内容):
?Distribution  :Fedora 6
      Version:
?Service Name  :
      Version:
?ネットワーク構成:

■ コンテンツ関連情報

 Re: cgiのmkdirに関しての質問 ( No.1 )
日時: 2007/05/29 12:44
名前: 管理者

SELinuxが有効になっていませんか?
  参照:http://kajuhome.com/web_trouble.shtml#n03-04
 Re: cgiのmkdirに関しての質問 ( No.2 )
日時: 2007/05/29 13:45
名前: TAKE   <takeshi_029@hotmail.com>

管理人様、早々のレスありがとうございます。

SELINUXですが、確認してみた所このような感じになっておりました。


# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#    enforcing - SELinux security policy is enforced.
#    permissive - SELinux prints warnings instead of enforcing.
#    disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#    targeted - Only targeted network daemons are protected.
#    strict - Full SELinux protection.
SELINUXTYPE=targeted

# SETLOCALDEFS= Check local definition changes
SETLOCALDEFS=0
~
SELINUXも問題なさそうなのですが、何か考えられる原因はございますでしょうか?
どうぞ宜しくお願いいたします。
 Re: cgiのmkdirに関しての質問 ( No.3 )
日時: 2007/05/29 14:13
名前: 管理者

推測ですが「w_test」ディレクトリのパーミッションがapacheプロセスに書き込み権がなくないですか?

# chown apache:apache w_test
# chmod 750 w_test

上記2点を実施して正常なアクセス権にしてみて下さい。
 Re: cgiのmkdirに関しての質問 ( No.4 )
日時: 2007/05/29 17:29
名前: TAKE   <takeshi_029@hotmail.com>

管理人様、ありがとうございます。

自己解決できました。
原因はソース内に全角スペースがあった事のようです。

本当にご迷惑をおかけしました。
またこちらにお世話になるとおもいますが宜しくお願いいたします。

■ その他

ページ先頭へ


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