- 締切済み
ファイルの出力先の指定
現在「/var/www/html」内に「fileread.cgi」というプログラムを制作しています。プログラム中で取得したファイルを「/home/mizumaki/download」に保存したいのですがうまくできません。プログラム中で $file="/home/mizumaki/download/index.html" open(OUT,">$file"); print OUT $data; close(OUT); と指定しても保存されません。「/home/mizumaki/download」には保存できないのでしょうか?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- nottisan
- ベストアンサー率100% (2/2)
Windows上でPerlプログラムをしていますので あんまり自信が無いのですが… 「/var/www/html」内に「fileread.cgi」となりますと 「/home/mizumaki/download」の位置が 「/var/www/html/home/mizumaki/download」となるように思うのですが… 「.../home/mizumaki/download」といった風に書かれたらどうでしょうか? もしくは「fileread.cgi」から通常のWEBリンク(<a href="...")で 適当なテキストを表示するように書いて、リンクができるか試されたらいいのでは?と思います。 違ったことを言ってましたらすいません。
/home/mizumaki/downloadが開けるかどうか確認した方が良いのでは? あと、バークレー系のOSの場合はファイル名などの「大文字小文字」ははっきりと違うものとして扱われますので 実際は /home/Mizumaki/Download/ などのパス名だった場合にはエラーになります。
補足
今、やってみたところ/home/mizumaki/downloadは開けませんでした。 パスも確認したところ/home/mizumaki/downloadであってました。
- みずの(@mizuno3)
- ベストアンサー率73% (192/263)
普通に権限が無いんじゃないでしょうか。 downloadのパーミッションを777とかにしたら出来るとか。 まずはエラーメッセージを出力させてみると良いかと思います。
補足
パーミションは755でやってました。先程、777に変更してみましたがダメでした。一応、ファイルが開けなかったときは"ファイルが開けません"とエラーメッセージが出るようにしています。ちなみに実行するとエラーメッセージがでます。他に何か方法はないでしょうか?
お礼
ご回答ありがとうございます。