2016-06-21 18 views
0

私はいくつかのWebアプリケーションを開発するために少しUbuntu Serverをセットアップしました。 Ubuntu ServerがPHPでディレクトリを作成できません

私はディレクトリを作成するには、mkdir()を使用しています小さなスクリプトを持っている、しかし、私はその簡単なコマンド、許可が拒否されたイム取得は

[Tue Jun 21 22:27:25.079075 2016] [:error] [pid 21150] [client 192.168.0.8:55413] PHP Warning: mkdir(): Permission denied in ......... 
ある

mkdir($directory); 

エラーを取得しています

また、ftp_get()のようないくつかの他のコマンドの許可を拒否しました。

私がphpinfo()をチェックすると、upload_tmp_dirは値に設定されません。

私は非常にサーバー管理者ではないので、どんな助けでも大歓迎です。

私はチュートリアルからサーバーをセットアップし、別のチュートリアルから自分の仮想ホストをセットアップしました。

おかげでみんな:)

+0

これはPHPの問題ではありません。 PHPを実行するプロセスには、リクエストを実行するために必要な権限がありません。サーバーを正しく構成する必要があります。どのユーザーがPHPを実行しているのか調べます(これがApacheの場合はwww-データかもしれません)。このユーザーを正しいグループに追加すると、ディレクトリで必要な作業を行うことができます。また、ユーザ、グループ、およびそのパーミッションに関する情報を追加して、ubuntu SOのサイトで尋ねることもできます。 – OptimusCrime

+0

@OptimusCrime .. sudo chown -R www-data:www-data/var/www ...それは私の問題の永久的な解決策でしょうか? – BigJobbies

+0

より良いアプローチは正しいグループにユーザーを追加することです。 – OptimusCrime

答えて

0

あなたはPHPサービスを開始するユーザーがいない場合は、ディレクトリへの書き込み権限を持っていることを確認する必要があります。コマンドsudo chown -R php_user /which_directory_you_want_to_mkdirをinoutのrootパスワードよりも試して、プログラムを再度実行することができます。がんばろう。

私の英語はあまり良くありません、ごめんなさい

+0

ねえ、これは唯一の一時的な解決策ではありませんか? ...アプリケーションがディレクトリを作成している場合、アクセス許可は常に設定する必要があります – BigJobbies

+0

私はあなたが何をしたいのか分かりませんが、あなたのコードとエラーメッセージによれば、おそらくあなたは$ directoryあなたがその許可を持っていることを確かめてください。 – Vincik

関連する問題