Fehler „Berechtigung verweigert“ beim Erstellen eines Verzeichnisses mit der mkdir-Funktion von PHP
Beim Erstellen eines Verzeichnisses mit der mkdir-Funktion von PHP kann der folgende Fehler auftreten:
Warning: mkdir() [function.mkdir]: Permission denied in ....
Dieser Fehler weist darauf hin, dass der Apache-Benutzer nicht über die erforderlichen Berechtigungen zum Erstellen des Verzeichnisses am angegebenen Speicherort verfügt.
Lösung:
Anstatt die Berechtigungen auf 777 festzulegen, was allen Benutzern übermäßigen Zugriff gewährt, sollten Sie die folgende Alternative in Betracht ziehen:
1. Besitz und Berechtigungen festlegen:
Gewähren Sie der Apache-Gruppe und dem Benutzer den Besitz aller Dateien (z. B. www-data in Ubuntu).
<code class="console">sudo chown -R www-data:www-data /path/to/webserver/www</code>
Erlauben Sie allen Mitgliedern der Apache-Gruppe, Dateien zu lesen und zu schreiben.
<code class="console">sudo chmod -R g+rw /path/to/webserver/www</code>
2. Benutzer und Gruppe überprüfen:
Überprüfen Sie, ob der Apache-Benutzer Teil der www-data-Gruppe im Host-Betriebssystem ist.
<code class="console">sudo usermod -aG www-data <username></code>
3. Webserver neu starten:
Starten Sie den Webserver (z. B. Apache2) neu, um die Änderungen zu übernehmen.
<code class="console">sudo service apache2 restart</code>
Beispiel für 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>
Nach der Implementierung dieser Schritte sollte die Funktion mkdir() ohne Fehler aufgrund der Berechtigungsverweigerung ausgeführt werden.
Das obige ist der detaillierte Inhalt von**Warum erhalte ich beim Erstellen von Verzeichnissen mit der Funktion „mkdir()' von PHP die Fehlermeldung „Berechtigung verweigert'?**. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!