Ich arbeite mit Laravel 5.4. Und ich habe Probleme mit .env und composer.json Datei. Jeder kann von jedem Browser aus zugreifen und jeder kann meine Datenbankanmeldeinformationen sehen. Bitte helfen Sie mir, diese Dateien zu schützen.Wie sichere .env Datei in Laravel 5.4?
Antwort
Denken Sie daran, dass, sobald Ihr Server konfiguriert ist, um den öffentlichen Ordner als Dokumentstamm anzuzeigen, niemand die Dateien auf dieser Ebene anzeigen kann, was bedeutet, dass Ihre .env
Datei bereits geschützt ist, sowie Ihre gesamte Anwendung. - Das ist der Grund, dass der öffentliche Ordner da ist, Sicherheit. - Die einzigen Verzeichnisse, die Sie in Ihrem Browser sehen können, wenn Sie den Dokumentenstamm auf den Öffentlichen Ordner setzen, sind die Ordner, die dort sind, wie die Stile und Skripte.
Sie einen Test wie diese machen können:
mit dem Terminal in Ihrem Projektverzeichnis eintragen und trifft dies:
php -t public -S 127.0.0.1:80
Die -t das Dokumentstamm bedeutet, wo die PHP-Web-in integrierten Server wird Interpreter als das Dokumentenstammverzeichnis. siehe unten -:
-t <docroot> Specify document root <docroot> for built-in web server.
nun versuchen, die .env
Datei zuzugreifen, und Sie werden sehen, dass Sie ein 404 erhalten, die die Ressource als nicht gefunden.
Natürlich ist es nur ein Beispiel, Sie müssen Ihren Server konfigurieren, um das Gleiche zu tun.
Niemand kann diese Dateien über den Browser anzeigen, da sich der Stamm Ihrer Website unter /public
befindet und die composer.json
und .env
Dateien außerhalb dieses Bereichs liegen.
Die einzige Möglichkeit, diese Dateien anzuzeigen, besteht darin, sich mit dem Webserver zu verbinden und in den entsprechenden Ordner zu wechseln.
Stellen Sie sicher, dass es auf Ihrem .gitignore ist und Sie es lokal auf Ihrem Server erstellen.
Sie können in den .htaccess (stellen Sie sicher, dass Ihre .htaccess-Datei in Stammordner nicht in der Öffentlichkeit sein sollte) folgenden Code-Datei die Erlaubnis .env Datei zu verwehren
<FilesMatch "^\.env">
Order allow,deny
Deny from all
</FilesMatch>
einfach Sie unter Code hinzufügen in Ihre .htaccess-Datei, um die Berechtigung für .env- und composer.json-Dateien festzulegen.
<Files .env>
Order allow,deny
Deny from all
</Files>
<Files composer.json>
Order allow,deny
Deny from all
</Files>
Und unterhalb der Linie für
Directory Browsing deaktivierenOptions All -Indexes
- 1. Wie schützen .env Datei Laravel
- 2. Wie in laravel .env Datei kommentieren?
- 3. Laravel 5.4 Datenbankverbindung
- 4. Laravel Projekt fehlt .env Datei
- 5. Laravel 5.4 - Lesen CSV-Datei
- 6. Wie generiert man .env-Datei für Laravel?
- 7. loacalhost vs127.0.0.1 in .env-Datei in Laravel
- 8. Laravel 5.4 - xlsx-Datei lesen
- 9. Wie kann ich sichere Env-Variablen entschlüsseln?
- 10. Aktualisierungsabfrage in Laravel 5.4
- 11. Hosting Laravel Projekt, nicht lesen env Datei
- 12. Warum Laravel gesamte Env-Datei protokollieren?
- 13. Fernzugriff in Laravel 5.4
- 14. wie DB-Werte an CSS-Datei in Laravel übergeben 5.4
- 15. Laravel 5.4 Komponist Fehler
- 16. Wie CRUD Betrieb in Laravel 5.4 verwenden
- 17. Laravel 5.4 Bild Upload keine Datei erkannt
- 18. Mail senden Problem in Laravel 5.4
- 19. wie Laravel 5.4 Datenbankverbindung Nachricht
- 20. Config database.php und env Laravel
- 21. pretty urls laravel 5.4
- 22. psycopg2 - Laravel Local Env
- 23. Laravel 5.4 Authentifizieren
- 24. wie die Laravel 5.4 URL https statt http auf AWS
- 25. Benutzerdefinierte Hilfsklassen in Laravel 5.4
- 26. Laravel Middleware funktioniert nicht in Laravel 5.4
- 27. wie alle Header Informationen in Laravel 5.4
- 28. Wie implementiere ich HTTPS in Laravel 5.4
- 29. SEO auf Laravel 5.4
- 30. Suchergebnis Ausgabe in Laravel 5.4
kann niemand zugreifen, wenn Sie alles, was an/public setzen – huhu
wenn ich dann öffentlich von .htaccess entfernen? –
https://Stackoverflow.com/a/47355544/6517383 Diese Antwort verwendet Dateiberechtigungen –