Ja, das ist ganz einfach.
Es gibt zwei Möglichkeiten, Benutzer am Zugriff auf example.txt
zu hindern . Die erste besteht darin, es in einem Ordner außerhalb Ihres Webordners abzulegen (normalerweise www
genannt oder public_html
), die zweite besteht darin, eine .htaccess
einzufügen Datei im Ordner mit Ihrem example.txt-Skript, das den Zugriff auf die Datei insgesamt blockiert. Die .htaccess
würde aussehen wie
<files "example.txt">
deny from all
</files>
Aber Sie könnten example.txt
ändern zu etwas wie *.txt
wenn Sie alle .txt
blockieren wollten Dateien im Ordner.
Dann können Sie file_get_contents()
verwenden in Ihrem readfile.php
Um den Inhalt der Textdatei zu erhalten, oder wenn Sie nur die Datei ausgeben möchten, können Sie readfile
verwenden
Speichern Sie einfach die Dateien, die Sie nicht öffentlich zugänglich machen möchten außerhalb des Webroot .
/home
example.txt
/www
readfile.php
Wenn /home/www/
Ihr öffentlicher Webroot-Ordner ist, ist jede Datei darüber nicht über den Webserver zugänglich. readfile.php
kann unter ../example.txt
immer noch problemlos auf die Datei zugreifen obwohl.
Wenn Sie die Dateien im Webroot speichern müssen, legen Sie die Dateien in einem Ordner ab und verweigern Sie den Zugriff auf diesen Ordner. Wenn Sie Apache verwenden, erstellen Sie eine .htaccess-Datei im Ordner und geben Sie deny from all
ein