Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Anfängerfragen ›

private Files Verzeichnis und dazu passende .htaccess Datei

Eingetragen von Dorothea_Z (198)
am 28.04.2024 - 18:44 Uhr in
  • Anfängerfragen
  • Drupal 9.x oder neuer

Hallo zusammen,
Unter drupal10.x bekam ich den Hinweis, dass es kein private File Verzeichnis gibt und eine mögliche Lösung (es unter sites/default/files/private) zu erstellen. Soweit alles klar. Dann aber kam eine Fehlermeldung dass die passende .htaccess Datei fehlt samt Hinweis - aber der bezog sich auf SA-CORE-2013-003 und eine drupal6 oder drupal7 Version. Ich habe die drupal7 Version genommen, weil ich nichts im Blick auf drupal10 fand - aber die Fehlermeldung bezüglich .htaccess kommt weiterhin.
Wie muss der Inhalt der entsprechenden .htaccess Datei lauten, wenn ich drupal10 verwende und das Verzeichnis oben verwende?
Danke für Hinweise!
LG
D.

‹ Content Typ 1;2 und 3 in Abhängigkeit zu Content Typ 4 und 5, zur anzeige kommen lassen [gelöst] Updb-Befehl geht nicht - weil falsche PHP-Version ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Dorothea,private files

Eingetragen von Thomas Gleitz (55)
am 29.04.2024 - 06:47 Uhr

Hallo Dorothea,
private files sollten außerhalb der Drupal-Dateiablage sein, also nicht im sites-Verzeichnis.
Die htaccess-Datei funktioniert mit diesem Inhalt:

# Deny all requests from Apache 2.4+.
<IfModule mod_authz_core.c>
  Require all denied
</IfModule>

# Deny all requests from Apache 2.0-2.2.
<IfModule !mod_authz_core.c>
  Deny from all
</IfModule>

# Turn off all options we don't need.
Options -Indexes -ExecCGI -Includes -MultiViews

# Set the catch-all handler to prevent scripts from being executed.
SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006
<Files *>
  # Override the handler again if we're run later in the evaluation list.
  SetHandler Drupal_Security_Do_Not_Remove_See_SA_2013_003
</Files>

# If we know how to do it safely, disable the PHP engine entirely.
<IfModule mod_php.c>
  php_flag engine off
</IfModule>

Dazu musst du dann noch die Datei /sites/default/settings.php ändern:
* Private file path:
*/
$settings['file_private_path'] = 'Dein Pfad';

  • Anmelden oder Registrieren um Kommentare zu schreiben

das funktioniert bislang

Eingetragen von Dorothea_Z (198)
am 29.04.2024 - 07:45 Uhr

leider nicht - im Gegenteil, nun kommen zwei Fehlermeldungen: drupal findet das Verzeichnis nicht und behauptet, private Files seien nicht ausreichend geschützt.
Vielleicht liegt es am shared hosting, dass ich irgendwie die Pfade nicht korrekt eingegeben habe? Mir ist noch nicht klar, wie ich einen Pfad anlege, der nicht über das Internet erreichbar ist, wenn ich auf einer chroot Umgebung arbeite und wo ich das dann alles eintragen muss, damit es korrekt läuft...
Aber Danke für die .htaccess Datei!
LG
D.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Da habe ich auch lange zu

Eingetragen von Thomas Gleitz (55)
am 29.04.2024 - 08:07 Uhr

Da habe ich auch lange zu gebraucht ;-)
mit putty und dem Befehl pwd kannst du dir den richtigen Pfad anzeigen lassen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

shared hosting ..

Eingetragen von Franz (225)
am 29.04.2024 - 23:28 Uhr

shared hosting kann das auch.
Der private Pfad liegt dann (bei mir) z.B. "eins tiefer",
.../extra/ 'daneben' vom Document-Root
.../web/sites/default/ ..
Die .htaccess liegt in diesem Beispiel in /extra
und in settings.php hab ich dann
$settings['file_private_path'] = '../extra';

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke, aber

Eingetragen von Dorothea_Z (198)
am 30.04.2024 - 07:37 Uhr

bei mir scheint das irgendwie nicht zu funktionieren, obwohl ich via FTP das entsprechende Verzeichnis nun an verschiedenen Stellen erstellt habe und die settings.php entsprechend angepasst habe - aber ich habe kein Verzeichnis "web", auch wenn drupal einwandfrei läuft. Vielleicht muss ich alles neu installieren? Oder ich muss erstmal kapieren, wie das mit den Unterverzeichnissen genau sein sollte...
Momentan ist beruflich bei mir viel los - daher melde ich mich wieder, wenn etwas mehr Luft ist.
Danke!
LG
D.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Mehrere Dinge zu private files

Eingetragen von C_Logemann (912)
am 06.05.2024 - 22:01 Uhr

Private files sind in Drupal dafür da um Dateien mit Access-Steuerung durch Drupal zu schützen. Genau darin liegt auch dessen Nachteil, da dies Ressourcen via PHP und Datenbank verbraucht. Das heißt, da sollte man auch wissen, warum man die Private files benutzen möchte bzw. sollte.

Die ".htaccess"-Datei kann diverse Konfigurations-Anweisungen enthalten, die von Apache Web-Servern gelesen und ausgewertet werden. Das ist bei der Standard-Konfiguration von Apache der Fall und wird in der Regel von Shared Hosting-Anbietern genutzt. Das macht die Ausführung von Web-Anwendungen aber langsamer. Um die Flexibilität dieser von Usern bzw. in diesem Fall Drupal selbst organisierter Konfiguration aufrecht zu erhalten aber mehr Performance bei ausliefern von "Public"-Files zu beschleunigen wird vor dem Apache Web-Server gerne auch mal ein Nginx-Webserver als Proxy verwendet. Der Nginx kann aber auch direkt Drupal mit PHP verknüpfen und macht das dann auch schneller. Allerdings sind die Konfigurations-Abweisungen aus .htaccess-Dteien dem Nginx unbekannt. Man muss sich dann also selbst drum kümmern bzw. der Hosting-Verantwortliche. Drupal überprüft aber trotzdem die Standard-Verzeichnisse wie das public und das private Files Verzeichnis, ob es darin einen ".htaccess"-Schutz gibt, der vor allem die PHP-Ausführung verhindern soll. Diese Standard-Überprüfung ist für Nginx nicht nur nervig, sondern geradezu trügerisch, or allem, wenn es fälschlich OK ergibt. Das ist aber eigentlich generell nur ein Hilfskonstrukt da sich weder im Shared Hosting noch im Custom Hosting kaum jemand eine viel sicherer Strategie nutzt: Den Webserver nur zu erlauben, die wirklich benötigten PHP-Dateien auszuführen bzw. an einen PHP-Prozess (z.B. FPM) zu übergeben. Das kann man sowohl unter Nginx als auch Apache so konfigurieren. D.h. shared Hoster könnten das auch machen, aber das habe ich noch nicht gesehen.
Aber bezüglich Private Files außerhalb des Webroots sind spezielle Zugriffs bzw. PHP Beschränkungen in der Regel ngar nicht nötig auch nicht via .htaccess, da dort eben nur Drupal direkt darauf zugreifen kann und eben dann die Daten (auch ein File) nach Überprüfung der Drupal internen Zugriffs-Regeln dem Webserver und dieser dann dem Browser "übergibt".

  • Anmelden oder Registrieren um Kommentare zu schreiben

kein "web" .

Eingetragen von Franz (225)
am 20.05.2024 - 22:09 Uhr

/web/ wird für D8 oder D9+ mit composer-Skript "drupal/recommended-project" erzeugt. Andere Wege sind möglich, aber da wirds wohl unübersichtlicher.
Wirksamer Maßstab in meiner Erfahrung: drush muss laufen ...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Tag 7 Stunden
  • Hey danke
    vor 2 Tagen 2 Stunden
  • Update: jetzt gibt's ein
    vor 2 Tagen 20 Stunden
  • Hallo, im Prinzip habe ich
    vor 1 Woche 6 Stunden
  • Da scheint die Terminologie
    vor 1 Woche 9 Stunden
  • Kannst doch auch alles direkt
    vor 1 Woche 4 Tagen
  • In der entsprechenden View
    vor 1 Woche 4 Tagen
  • Dazu müsstest Du vermutlich
    vor 1 Woche 4 Tagen
  • gelöst
    vor 4 Wochen 1 Tag
  • Ja natürlich. Dass ist etwas,
    vor 4 Wochen 2 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20449

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 17 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association