[gelöst] Layout kaputt, liegt es an Permissions?
am 04.05.2021 - 01:23 Uhr in
Hallo,
frisch installiert auf einem Ubuntu 20.4 bei Hetzner zerhaut es das Layout in Drupal 9.1.7, z.B. diese Reports Seite
/web/en/admin/reports/dblog
Mit dem Theme Bartik 9.1.7 hat es auch die Homepage zerlegt. Mit Olivero 9.1.7 ist die Login Seite aber dargestellt...
Ich dachte es liegt an Permissions, hatte Nachmittags einige dieser Meldungen:
The specified file 'temporary://file' could not be copied because the destination directory 'public://js' is not properly configured. This may be caused by a problem with file or directory permissions.
Habe in meinem Verzeichnis (/path_to_drupal_installation), das ist dieses mit dem Inhalt, richtig?
composer.json composer.lock vendor web
folgendes ausgeführt wie hier https://www.drupal.org/node/244924#linux-servers beschrieben:
chown -R userd9:www-data .
find . -type d -exec chmod u=rwx,g=rx,o= '{}' \;
find . -type f -exec chmod u=rw,g=r,o= '{}' \;
cd /web/sites
find . -type d -name files -exec chmod ug=rwx,o= '{}' \;
for d in ./*/files
do
find $d -type d -exec chmod ug=rwx,o= '{}' \;
find $d -type f -exec chmod ug=rw,o= '{}' \;
done
Es scheint sich aber nichts an dem Problem zu ändern.
chown wurde auch gemacht:
sudo chown -R www-data:www-data /var/www
sudo chown -R userd9:userd9 /var/www
Was kann es sein?
Danke.
- Anmelden oder Registrieren um Kommentare zu schreiben
Das ist ein Problem der
am 04.05.2021 - 08:23 Uhr
Das ist ein Problem der Rechte auf dem files-Verzeichnis und seinen Unterordnern. Wem gehört dieses Verzeichnis (user und group)? In standart Installationen muß sichergestellt werden, daß der User oder die Gruppe www-data dort Schreibrechte haben. Du hast mit Deinen chmod-Befehlen zwar der Gruppe Schreibrechte gegeben, aber nicht www-data erwähnt. Ich empfehle von der Ebene in der zich composer;json und composer;lock befinden die Befehle:
chgrp -R www-data *
chmod -R g+w *
Das sollte das Problem beheben.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
sudo chmod -R g+w * sudo
am 04.05.2021 - 12:07 Uhr
sudo chmod -R g+w *
sudo chmod -R g+w *
ausgeführt.
So sieht es in meinem Verzeichnis (/path_to_drupal_installation) aus:
$ ls -l
-rw-rw---- 1 userd9 www-data 3165 May 3 17:09 composer.json
-rw-rw---- 1 userd9 www-data 181627 May 3 17:09 composer.lock
drwxrwx--- 20 userd9 www-data 4096 May 3 17:09 vendor
drwxrwx--- 7 userd9 www-data 4096 May 3 16:17 web
Das Verhalten, die kaputte Darstellung (z.B. Reports Seite /web/en/admin/reports/dblog) ändert sich nicht.
Gibt es noch Tipps?
Danke
Drupal 9.x, Ubuntu
Mach bitte mal ein Listing
am 04.05.2021 - 19:12 Uhr
Mach bitte mal ein Listing (ls -la) von web/sites/default/files. Du schaffst es nicht, die CSS-Daten zu schreiben und zu laden. Daher ist Deine Darstellung zerhauen.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Das müsste doch ok sein?
am 04.05.2021 - 20:52 Uhr
Das müsste doch ok sein? Lesen und schreiben kann www-data. Mit dem "s" Sonderrechte habe ich mich noch nicht beschäftigt.
d rwx rws --- files
$ ls -l
-rw-rw---- 1 userd9 www-data 6782 May 3 16:17 default.services.yml
-rw-rw---- 1 userd9 www-data 31160 May 3 16:17 default.settings.php
drwxrws--- 9 userd9 www-data 4096 May 3 17:02 files
-rw-rw---- 1 userd9 www-data 31765 May 4 01:11 settings.php
EDIT:
Unter: admin/reports/status heißt es jetzt
Configuration files
Not protected
The directory sites/default is not protected from modifications and poses a security risk. You must change the directory's permissions to be non-writable.
The file sites/default/settings.php is not protected from modifications and poses a security risk. You must change the file's permissions to be non-writable.
Drupal 9.x, Ubuntu
Rechtevergabe
am 08.05.2021 - 09:28 Uhr
Für eine Drupal Standard- Installation ist die Rechtevergabe im Grunde recht einfach. Generell gehören die Verzeichnisse dem Benutzer und seiner Gruppe. Beide haben vollen Rechte:
(sudo) chown -R userd9:userd9 DRUPALPROJEKTVERZEICHNIS
(sudo) chmod -R 775 DRUPALPROJEKTVERZEICHNIS
Dann gibt es noch die Verzeichnisse, in denen Drupal schreiben und lesen können muss. Das sind in der Regel die Verzeichnisse files, tmp und private(falls dies überhaupt genutzt wird). Diese Verzeichnisse müssen zumindest der Gruppe www-data (dem Apache Server Prozess) gehören. Also:
(sudo) chown -R userd9:www-data files (sowie tmp und ggf. private)
(sudo) chmod -R 775 files (falls noch nicht gesetzt, tmp und ggf. private ebenfalls)
Die für die settings.php reicht nach der Installation ein chmod 644.
Drupal Standard- Rechtevergabe
am 24.05.2021 - 12:53 Uhr
(sudo) chown -R userd9:userd9 DRUPALPROJEKTVERZEICHNIS
(sudo) chmod -R 775 DRUPALPROJEKTVERZEICHNIS
(sudo) chown -R userd9:www-data files (sowie tmp und ggf. private)
(sudo) chmod -R 775 files (falls noch nicht gesetzt, tmp und ggf. private ebenfalls)
Danke, das hat geholfen!
Wo würden die Verzeichnisse: tmp und private (falls genutzt wird) liegen?
Einen "private" habe ich hier gefunden, aber der ist wohl nicht gemeint?
/web/core/modules/migrate_drupal_ui/tests/src/Functional/d7/files/sites/default/private/
@wla habe jetzt erst gesehen, dass ich ls -l gemacht habe, anstatt wie von dir vorgeschlagen ls -la.
Drupal 9.x, Ubuntu
Zitat: Wo würden die
am 24.05.2021 - 13:40 Uhr
Wo würden die Verzeichnisse: tmp und private (falls genutzt wird) liegen?
Oberhalb deines www-webverzeichnis, also im Root Bereich des Servers.
Unter Dateisystem würde es dann z.B. so lauten:
/der-ftp-name-deines-servers/privat-mein-name
/der-ftp-name-deines-servers/tmp-mein-name
Die Ordner kannst du beliebig benennen, nur der Serverpfad muss richtig sein.
Grüße Jenna
Tropse schrieb Wo würden die
am 24.05.2021 - 13:48 Uhr
Wo würden die Verzeichnisse: tmp und private (falls genutzt wird) liegen?
Ein private Verzeichnis existiert erst einmal nicht, da dies nicht in allen Fällen benötigt wird. Ich persönlich lege /tmp und /private aus Sicherheitsgründen außerhalb des Document- Root an:
Projektverzeichnis
/web
/tmp
/private (private kann auch anders heißen....)
Dann in der web/sites/default/settings.php die Verzeichnisse registrieren:
$settings['file_temp_path'] = '../tmp';
$settings['file_private_path'] = '../private';
ggf. muss der Drupal Cache geleert werden.
Es kann natürlich auch ein absoluter Pfad angegeben werden.
kaputtes Layout mit Bartik, Olivero ist ok
am 24.05.2021 - 16:34 Uhr
Danke, das mit den Verzeichnisse ist jetzt klar.
Leider kommt das kaputte Layout doch wieder. Dieses mal hier im Backend:
/web/en/admin/structure/block
Und wenn ich Theme Bartik 9.1.7 als default nehme, dann ist die User Webseite das Layout auch kaputt. Wenn ich Olivero 9.1.7 nehme ist die Webseite ok.
Woran kann das liegen? Danke.
EDIT: Nach Update auf drupal/core 9.1.8 haben sich die zwei Probleme scheinbar erledigt.
Drupal 9.x, Ubuntu