2016-07-12 1 views
4

Ich verschiebe mein Projekt zu HOST aber ich kann .env mit Adresse mysite.com/.env zugreifen und diese Datei mit allen Variablen und sicheren Daten anzeigen. meine .env Datei:Wie schützen .env Datei Laravel

APP_ENV=local 
APP_DEBUG=true 
APP_KEY=base64:xxxxxxx 
APP_URL=http://localhost 

DB_CONNECTION=mysql 
DB_HOST=127.0.0.1 
DB_PORT=3306 
DB_DATABASE=xx 
DB_USERNAME=xx 
DB_PASSWORD=secret 

CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

REDIS_HOST=127.0.0.1 
REDIS_PASSWORD=null 
REDIS_PORT=6379 

MAIL_DRIVER=smtp 
MAIL_HOST=mailtrap.io 
MAIL_PORT=2525 
MAIL_USERNAME=null 
MAIL_PASSWORD=null 
MAIL_ENCRYPTION=null 

Wie ich diese Datei versteckt kann, und dies ist die logische Lösung?

Anmerkung: (Ich bewege alle öffentliche Ordner in Root-Verzeichnis-Dateien.)

+0

Apache verweigert den Zugriff auf Dateien, die standardmäßig mit '.' beginnen. Welchen Webserver benutzen Sie? – apokryfos

+0

Mein Webserver ist Apache. – lock

+2

.env soll in/path/zu/eur/laravel-project sein. Und/path/to/your/laravel-project/public sollte der Webroot sein. Also, wenn Sie nicht die Standard-Setup geändert haben, sollten Sie nicht in der Lage sein, auf die .env –

Antwort

2
  1. Alle, mit Ausnahme des öffentliche Ordner auf eine höhere Ebene, wie zum Beispiel eines Ordner Laravel zu bewegen - http://prntscr.com/bryvu7

  2. ändern Datei publi_html/index.php Linie

    require __DIR__.'/../bootstrap/autoload.php';

zu

require __DIR__.'/../laravel/bootstrap/autoload.php'; 

Und Linie

$app = require_once __DIR__.'/../bootstrap/app.php'; 

zu

$app = require_once __DIR__.'/../laravel/bootstrap/app.php'; 
$app->bind('path.public', function() { 
    return __DIR__; 
}); 
  1. ändern Datei Laravel/server.php Linie

    require_once __DIR__.'/public/index.php';

zu

require_once __DIR__.'/index.php'; 
+0

Dank.Aber diese Dinge tun, wenn Sie zu mysite.com Anzeige Laravel-Ordner gehen und Öffentlicher Ordner zeigen keine Index-Website an. – lock

+0

Vielleicht beim Hosting Ihres Ordners - öffentlich. kein Ordner public_html? –

+0

Schreib mir in skype: fatboymen –

0

sollten Sie die Erlaubnis alle Ordner 741 auf Ihrer Anwendung ändern, außer Bootstrap und die Einspeicherung und Öffentlichkeit (755).

2

Erstellen Sie. Htaccess-Datei in Ihrem Stammverzeichnis und fügen Sie folgenden Code.

#Disable index view 
options -Indexes 

#hide a Specifuc File 

<Files .env> 
order allow,deny 
Deny from all 
</Files>