ホームページ >バックエンド開発 >PHPチュートリアル >**PHP の `mkdir()` 関数を使用してディレクトリを作成すると、「アクセス許可が拒否されました」エラーが発生するのはなぜですか?**

**PHP の `mkdir()` 関数を使用してディレクトリを作成すると、「アクセス許可が拒否されました」エラーが発生するのはなぜですか?**

Susan Sarandon
Susan Sarandonオリジナル
2024-10-25 17:56:031040ブラウズ

**Why am I Getting a

PHP mkdir 関数を使用してディレクトリを作成中にアクセス許可が拒否されました エラー

PHP の mkdir 関数を使用してディレクトリを作成すると、次のエラーが発生する場合があります。

Warning: mkdir() [function.mkdir]: Permission denied in ....

このエラーは、Apache ユーザーが、指定された場所にディレクトリを作成するために必要な権限を持っていないことを示しています。

解決策:

すべてのユーザーに過剰なアクセスを許可する 777 に権限を設定する代わりに、次の代替案を検討してください:

1.所有権と権限の設定:

  • すべてのファイルの所有権を Apache グループとユーザー (Ubuntu の www-data など) に付与します。

    <code class="console">sudo chown -R www-data:www-data /path/to/webserver/www</code>
  • Apache グループのすべてのメンバーにファイルの読み取りと書き込みを許可します。

    <code class="console">sudo chmod -R g+rw /path/to/webserver/www</code>

2.ユーザーとグループの確認:

  • Apache ユーザーがホスト オペレーティング システムの www-data グループの一部であることを確認します。

    <code class="console">sudo usermod -aG www-data <username></code>

3. Web サーバーの再起動:

  • Web サーバー (Apache2 など) を再起動して、変更を適用します。

    <code class="console">sudo service apache2 restart</code>

例Ubuntu の場合:

<code class="console">sudo chown -R www-data:www-data /var/www/html
sudo chmod -R g+rw /var/www/html
sudo service apache2 restart</code>

これらの手順を実装した後、mkdir() 関数は許可拒否エラーなしで実行されます。

以上が**PHP の `mkdir()` 関数を使用してディレクトリを作成すると、「アクセス許可が拒否されました」エラーが発生するのはなぜですか?**の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。