• ベストアンサー

Permission denied in

PHPを実行するとWarning: fopen failed to open stream Permission denied inと 表示されてしまいます。 インターネットを使い、調べてはいますが、 上記のように表示してしまいます。 ファイルです。パーミッションは606にしました。 このWarningを表示させないようにするには、どのようにすれば 良いのか教えて頂けると嬉しいです。

  • PHP
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

あとは > PHPを実行するユーザーとそのグループはどうなってますか? PHPを直接コマンドラインから実行するのなら、ユーザーはあなたですが、httpサーバーでモジュールやCGIとして実行するなら別の権限(nobodyとか)になっていると思います。 あとは ディレクトリのパーミッションを 707 にする ディレクトリとファイルのオーナーをPHPを実行するユーザーにする とかでしょうか。

mai5891
質問者

お礼

kmee様 コメントありがとうございます。 >ディレクトリのパーミッションを 707 にする 上記の方法でワーニングが無くなりました。 ありがとうございました。

その他の回答 (1)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

fopenは読み書きどちらをしようとしているのですか? そのファイルは存在するファイルですか? そのファイルの入ってるディレクトリの権限どうなってますか? そのファイルの所有者、所有グループはどうなってますか? そのファイルの入っているディレクトリの所有者、所有グループはどうなってますか? PHPを実行するユーザーとそのグループはどうなってますか? これらのどこかに不一致があると思われます。

mai5891
質問者

お礼

kmee様 書き込みありがとうございます。 fopenで読み書き両方をしようと思っています。 そのファイルは存在します。 ディレクトリの権限は「drwxr-xr-x」となっています。 ファイルの所有者は、オーナー(私)。所有グループは「staff」です。 ファイルの入っているディレクトリの所有者は、オーナー(私)。所有グループは「staff」です。 ユーザーとそのグループは変わっていません。 なお、DBではありません。 これらのどこに不一致があるのでしょうか? どなたか教えて頂けると嬉しいです。 宜しくお願いします。

関連するQ&A

  • fopenでパーミッションエラー

    fopenでパーミッションエラーが出ます。 fopen("../news.htm", "w"); Warning: fopen(../news.htm): failed to open stream: 許可がありません。 fopen("./news.htm", "w"); fopen("../map/news.htm", "w");# mapディレクトリを757にしてOK 上記はOKでした。 ディレクトリ構成は /public_html/sample/mag/test.php # fopenをするファイル sampleを757にしてもエラーが出ました。 fopenで一つ上のディレクトリにファイルを書き込むことは出来ないのでしょうか?

    • 締切済み
    • PHP
  • エラーの意味

    本当に困り果てています。 この警告の意味を教えてください。 Warning: fopen(test.txt) [function.fopen]: failed to open stream: Permission denied in /var/www/html/練習プログラム/test_kanryou.php on line 17 Warning: fwrite(): supplied argument is not a valid stream resource in /var/www/html/練習プログラム/test_kanryou.php on line 18 誰か詳しい方がいれば、教えていただきたいです。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • xreaで7行のプログラムがエラー

    <?php print '<body>'; print 'print関数は成功。<br>'; $fp = fopen('dat.dat', 'wb'); if(!$fp)print '失敗。'; else{print '成功。';fclose($fp);} ?> ブラウザは以下のように表示しました。 どこがいけないのでしょうか? print関数は成功。 Warning: fopen(dat.dat): failed to open stream: Permission denied in ****/foptest.php on line 4 失敗。

    • 締切済み
    • PHP
  • PHPのプログラムがうまく動作しません・・・

    かなりのPHP初心者なのですが、 チェックBOXにマークをすると商品が変わるようなものを作っております。 しかし、チェックボックスにチェックを入れて送信すると下記のようなエラーが出てしまい商品がかわりせん・・・ どなたか分かる方がいらっしゃいましたら宜しくお願い致します。 Warning: fopen(./data/20050827.txt): failed to open stream: Permission denied in /home/virtual/site31/fst/var/www/html/login/submit.php on line 10

  • Go-PEARがインストールできない

    Go-PEARをレンタルサーバーにインストールしたいのですが、 途中でエラーが出てインストールできません。 どうしたらインストールできますでしょうか。 http://pear.php.net/go-pear を go-pear.php として保存。そしてレンタルサーバーにアップ。 http://mydomain/go-pear.php にアクセス Bootstrapping Archive/Tar.php............ Tar.phpのインストールでエラーが出ているようです。 「エラー内容」 Warning: fopen() [function.fopen]: SAFE MODE Restriction in effect. The script whose uid/gid is 266042/600 is not allowed to access mydomain/temp/Archive owned by uid/gid 48/48 in mydomain/go-pear.php on line 1132 Warning: fopen(Archive/Tar.php) [function.fopen]: failed to open stream: Permission denied in mydomain/go-pear.php on line 1132 Warning: rmdir(mydomain/temp) [function.rmdir]: Permission denied in mydomain/go-pear.php on line 1282 could not open Archive/Tar.php for writing

    • 締切済み
    • PHP
  • Warningの意味・・・

    またなんですが、困っています・・・m(__)m Warning: fopen(./data/6-9.xml): failed to open stream: No such file or directory in /***/***/xmldoc.php on line 83 xml file[./data/6-9.xml] don't open... 上記のような表示になりました。 <xmldoc.php> /* XMLファイルを開く */ if(!($fp = fopen($this->xml_filename, "r"))) ←83 { die("xml file[" . $this->xml_filename . "] don't open..."); } $tmp = ""; $encord; 意味がよく分からなくて困っています。。 お力貸していただければと思います(><)

    • ベストアンサー
    • PHP
  • xreaでファイル作成ができない。パーミッションが不足しているとのこと

    xreaで以下のようなコードを書いたPHPファイルを実行しました。 if (($mixSource = fopen("../mail".$MailID.".htm","w")) === FALSE) { print("ファイルオープンでエラーが発生しました。");} fwrite($mixSource,$str); fclose($mixSource); そうしましたところ、権限が足りないというエラーが発生しました。 パーミッションを0777に設定しても、しばらくすると0705に戻っているため問い合わせると、0777は許可していないとのこと。 調査した結果、PHPをCGIとして動作させると良いらしいので、 AddHandler application/x-httpd-phpcgi .php と書いた「.htaccess」ファイルをアップロードしました。 そうするとファイル書き込みは正常に動作するようなのですが、 今度は session_start(); を実行すると Warning: session_start() [function.session-start]: open(/tmp/sess_igp2b7reu7aold9btdspuc2d57, O_RDWR) failed: Permission denied (13) というエラーとなります。 単純にxreaで、ファイル作成を行いたいだけなのですが、 方法をご存知ありませんでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • permission denied

    以前インストールしたソフトを起動させようとアプリケーションをクリックしたところ、 logファイルに「permission denied」というエラーメッセージが出ます。 そこで、管理者として再ログインし直して実行してみたところ、実行出来ました。 ただ、ユーザーアカウント(Administrator)でログインアイコンの右クリックで”管理者として実行”では無理の様です。 以前は実行出来ていたのに・・・ どうにかユーザーアカウントでも実行出来るようにならないでしょうか? OCはWindows Vistaです。

  • パーミッションエラー/(°ё°)\

    お世話になっております! 携帯サイトを運営中です。 ドメイン移管に伴いファイルが初期化されたので再アップロード行っていたのですが、とある書き込みファイルにエラーが出てしまいました。 三つほどエラーが出ているのですが、どなた様か一つでも分かる方は御座いませんか{{(>_<)}} failed to open stream:permission in /フォルダ名/フォルダ名/db.php/~8 9 expects paramater 1 to be resource , boolean given in /フォルダ名/フォルダ名/db.php/~840 suplied argument is not a valid stream resource in /フォルダ名/フォルダ名/db.php/~841 db.phpはデータベースのファイルです。 db.phpのプログラムから別なファイルへ書き込みを行い,その書き込みファイルが作成されていないため、書き込みできずエラーって感じです。 まあ簡単に言いますと、該当の会員の書き込みファイルが無かったら作成し、作成されていたらそこに書き込むってだけのファイルです。

    • ベストアンサー
    • PHP
  • renameでのPermission deniedエラー

    下記スクリプトを実行すると、『Warning: rename(./aaa/bbb.send,./aaa/bbb.send.gz) [function.rename]: Permission denied in ...line 31←renameの行数』というエラーになります。 =========== <?php $dir = opendir("./aaa"); $latestfile=0; while ($fnm = readdir($dir)) { if($fnm == "." || $fnm == "..") continue; $ftime = filemtime("./aaa/$fnm"); if($latestfile < $ftime){ $latestfile = $ftime; $latestfilename =$fnm; $filename = "./aaa/$latestfilename"; $fp = fopen($filename, "rwb+"); fread($fp, 18); //18バイト読み飛ばす ftruncate($fp, 0); $warn = ''; while (!feof($fp)) { $warn .= fread($fp, 8192); } rewind($fp); fwrite($fp, $warn); rename($filename,"$filename.gz"); fclose($fp); } } closedir($dir); ?> ============= renameの手前でchmodを実行させ、aaaディレクトリ及びファイル自身(./aaa/$filename)にパーミッション0777を与えても現象は変わりません。renameする$filenameにつきましても./aaa/$filenameとしたり、./aaa/$latestfilenameとしてみましたがやはり変わりませんでした。 解決策があればご教授願います。

    • ベストアンサー
    • PHP

専門家に質問してみよう