399 Stimmen

Richtige Dateiberechtigungen für WordPress

Ich habe mir das hier angesehen, aber keine Details zu den besten Dateiberechtigungen gefunden. Ich habe auch einige Fragen zu WordPress-Formularen hier angesehen, aber jeder, der 777 vorschlägt, braucht offensichtlich eine kleine Lektion in Sicherheit.

Kurz gesagt, hier ist meine Frage. Welche Berechtigungen sollte ich für Folgendes haben:

  1. Root-Verzeichnis, in dem alle WordPress-Inhalte gespeichert sind
  2. wp-admin
  3. wp-content
  4. wp-includes

und dann alle Dateien in jedem dieser Ordner?

2voto

Grapehand Punkte 19
chown -Rv www-data:www-data
chmod -Rv 0755 wp-includes
chmod -Rv 0755 wp-admin/js
chmod -Rv 0755 wp-content/themes
chmod -Rv 0755 wp-content/plugins
chmod -Rv 0755 wp-admin
chmod -Rv 0755 wp-content
chmod -v 0644 wp-config.php
chmod -v 0644 wp-admin/index.php
chmod -v 0644 .htaccess

1voto

wayofthefuture Punkte 6660

Ich kann nicht sagen, ob dies korrekt ist, aber ich verwende ein Bitnami-Image über Google Compute App Engine. Ich hatte Probleme mit Plugins und Migration, und nachdem ich die Berechtigungen mit chmod durcheinander gebracht hatte, fand ich diese drei Zeilen, die alle meine Probleme gelöst haben. Ich bin mir nicht sicher, ob es der richtige Weg ist, aber es hat für mich funktioniert.

sudo chown -R bitnami:daemon /opt/bitnami/apps/wordpress/htdocs/
sudo find /opt/bitnami/apps/wordpress/htdocs/ -type f -exec chmod 664 {} \;
sudo find /opt/bitnami/apps/wordpress/htdocs/ -type d -exec chmod 775 {} \;

1voto

Abduhafiz Punkte 3028

Für OS X verwenden Sie diesen Befehl:

sudo chown -R www:www /www/folder_name

1voto

Harish Verma Punkte 524

Definieren Sie in der wp_config-Datei.

/var/www/html/Ihr-Projekt-Datei/wp-config.php

define( 'FS_METHOD', 'direct' );

chown - ändert den Dateibesitzer. D.h. der Besitzer der Datei/Verzeichnisses ändert sich auf den angegebenen, aber es ändert die Berechtigungen nicht.

sudo chown -R www-data:www-data /var/www

0voto

spinozarabel Punkte 41

Basierend auf all dem Lesen und Grübeln über meine eigenen Websites und nachdem ich gehackt worden bin, bin ich auf die obige Liste gekommen, die Berechtigungen für ein Sicherheits-Plugin für Wordpress namens Wordfence enthält. (Nicht damit verbunden)

In unserem Beispiel ist der Wordpress-Dokumentstamm /var/www/html/example.com/public_html

Öffnen Sie die Berechtigungen, damit www-data wie folgt in den Dokumentstamm schreiben kann:

cd /var/www/html/example.com
sudo chown -R www-data:www-data public_html/

Jetzt können Sie als Administrator von Ihrem Dashboard aus Aktualisierungen durchführen.

Sichern Sie die Website nach Abschluss der Updates, indem Sie die folgenden Schritte ausführen:

sudo chown -R wp-user:wp-user public_html/

Der obige Befehl ändert die Berechtigungen von allem in der Wordpress-Installation auf den Wordpress-FTP-Benutzer.

cd public_html/wp-content
sudo chown -R www-data:wp-user wflogs
sudo chown -R www-data:wp-user uploads

Der obige Befehl stellt sicher, dass das Sicherheits-Plugin Wordfence auf seine Protokolle zugreifen kann. Das Upload-Verzeichnis ist auch beschreibbar von www-data.

cd plugins
sudo chown -R www-data:wp-user wordfence/

Der obige Befehl stellt auch sicher, dass das Sicherheits-Plugin über die erforderlichen Lese- und Schreibberechtigungen für seine ordnungsgemäße Funktion verfügt.

Verzeichnis- und Dateiberechtigungen

# Alle Verzeichnisberechtigungen auf 755 setzen
find . -type d -exec chmod 755 {} \;

# Alle Dateiberechtigungen auf 644 setzen
find . -type f -exec chmod 644 {} \;

Setzen Sie die Berechtigungen für wp-config.php auf 640, damit nur wp-user diese Datei lesen kann und niemand anders. Berechtigungen von 440 haben bei mir nicht mit oben genanntem Dateibesitz funktioniert.

sudo chmod 640 wp-config.php

Automatische Wordpress-Updates mit SSH funktionierten gut mit PHP5, brachen jedoch mit PHP7.0 aufgrund von Problemen mit php7.0-ssh2, das mit Ubuntu 16.04 gebündelt war, und ich konnte nicht herausfinden, wie ich die richtige Version installiere und zum Laufen bringe. Glücklicherweise macht ein sehr zuverlässiges Plugin namens ssh-sftp-updater-support (kostenlos) automatische Updates über SFTP möglich, ohne dass libssh2 benötigt wird. Daher müssen die oben genannten Berechtigungen nur in seltenen Fällen gelockert werden, wenn dies erforderlich ist.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X