Verhindern Sie den direkten Zugriff auf Webserver-Dateien

0

Wie kann ich den direkten Zugriff auf meine Ordner / css und / scripts sowie deren Inhalte verhindern? Gibt es eine Möglichkeit, den direkten Zugriff auf index.php zu verhindern? (Der richtige Weg ist, einfach zu meiner Website zu gehen, die die Homepage automatisch über index.php lädt, oder zu der spezifischen Seite mit website.com/thepage, die zu index.php führt.? Page = thepage Links gehen direkt zu index.php.)

Vielen Dank!

mk12
quelle
Was genau meinen Sie mit "Direktzugriff"? Und warum willst du das verhindern?
25.
Unter direktem Zugriff verstehe ich das Eingeben und Anzeigen der URL, wenn sie nur zum Stylen der Seite verwendet werden soll.
mk12
Und für Dinge wie PHP-Dateien, die eine E-Mail von einem Formular senden, möchte ich nicht, dass Benutzer direkt zu dieser URL gehen, da dies einen Fehler verursachen würde.
mk12
Genau wie oft bekommt man Benutzer zufällige URLs in Ihrer Domain eingeben und beschweren , wenn sie Fehlermeldungen erhalten, oder „Kauderwelsch“ , die eigentlich CSS ist?
Grawity
website.com/send ist nicht so "zufällig", aber ich mache es jetzt sowieso anders.
mk12

Antworten:

3

Ich bin kein Webentwickler, aber soweit ich weiß, stimmt Folgendes:

  • Wenn Sie index.phpin einen Browser laden, wird der vom Browser empfangene und wiedergegebene Seitencode ausgegeben. Also fragt der Browser:

    http://website.com/index.php
    
  • Der Seitencode, den es erhält, enthält bestimmte CSS- und Javascript-Dateien aus Ihren Verzeichnissen css/und script/. Also fragt der Browser:

    http://website.com/css/mystyle.css
    http://website.com/script/myscript.js
    
  • Um diese Dateien einzuschließen, muss der Browser diese URLs von Ihrem Webserver anfordern und Ihr Webserver muss sie von diesen URLs aus bereitstellen.

Wenn ja, dann nein , können Sie nicht tun, was Sie verlangen, ohne zu ändern, wie Ihre CSS- und Skriptdateien enthalten sind.

Sie können PHP so ändern , dass die Ausgabe keine Links zu externen Dateien enthält, sondern den Inhalt dieser Dateien als Inline-Abschnitte der PHP-Ausgabe. Anschließend können Sie die Standardzugriffskontrollen des Webservers verwenden, um den Zugriff auf die Verzeichnisse css/und zu verweigern script/.

Quacksalber
quelle
Ok, vielleicht sollte ich mich dann nicht wirklich darum
kümmern
1

Sie können das Durchsuchen von Verzeichnissen deaktivieren, und Benutzer können den Inhalt von Ordnern, für die kein Standarddokument definiert ist, nicht sehen. Ist es das, wonach du suchst?

MDMarra
quelle
Nun, das ist schon unmöglich, da website.com/css das Verzeichnis nicht auflistet, sondern versucht, index.php? Page = css auszuführen (und dann zur Fehlerseite umzuleiten). Aber website.com/css/style.css zeigt es im Klartext an.
mk12