webentwicklung-frage-antwort-db.com.de

So beheben Sie den Fehler "[ErrorException] file_get_contents (/var/www/laravel/.env): Fehler beim Öffnen des Streams: Keine solche Datei oder Verzeichnis"

Ich verwende Ubuntu 14.04 auf meinem Computer. Ich habe composer und dann laravel in der Dokumentwurzel installiert, d. H. / Var/www

Ich habe auch -R 777 Perservierung zu Ordner laravel gegeben, der im Verzeichnis / var/www vorhanden ist.

Dann gehe ich mit cd/var/www/laravel in das Verzeichnis laravel und führe den folgenden Befehl php artisan aus, und ich habe dort alle verfügbaren Befehle gesehen.

Dann tippte ich php artisan key: generate ein und bekam den Fehler 

[ErrorException]  file_get_contents(/var/www/laravel/.env): failed to open stream: No such file or directory

 enter image description here Hier bin ich eigentlich festgefahren, kann mir bitte jemand in dieser Hinsicht helfen?

Vielen Dank.

17
user2839497

Benennen Sie .env.example in .env in Ihrem Laravel-Stammverzeichnis um

36
Vinod VT

Die .env-Datei ist noch nicht vorhanden, da Sie sie zuerst erstellen und konfigurieren müssen.

Mach Folgendes

# Navigate to the correct folder
$ cd /var/www/laravel

# Copy the example file to make a .env file
$ cp .env.example .env

# Set the parameters
$ vi .env
4
Peter

Benennen Sie .env.example in .env um und füllen Sie alle Eigenschaften aus . https://laravel.com/docs/5.0/configuration#environment-configuration

3
kejsu

Wahrscheinlich haben Sie Ihre .env -Datei im Laravel-Projektordner verpasst. Machen Sie also .env.example zu .env-Datei. Geben Sie auch die erforderliche Datenbankverbindung an.

.envfile sieht folgendermaßen aus: (Erforderliche Datenbankverbindung auffüllen)

APP_ENV=local
APP_DEBUG=true
APP_KEY=SomeRandomString
APP_URL=http://localhost

DB_Host=127.0.0.1
DB_PORT=3306
DB_DATABASE=Homestead
DB_USERNAME=Homestead
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

Ich hoffe, das wird Ihnen helfen. Danke.

1
Chonchol Mahmud

Wenn Sie, wie Sie, did über eine .env-Datei verfügen, haben Sie möglicherweise Berechtigungen, die zu knapp sind, um Ihrem aktuellen Benutzer das Schreiben zu ermöglichen (und impliziert, dass der aktuelle Benutzer versucht, ihn auszuführen ). Ich hatte alle meine Laravel-Dateien geändert, um im Besitz von www-data:www-data zu sein, und machte meinen aktuellen Benutzer zu einem Mitglied der www-data-Gruppe. Daher war ich von diesem Fehler ein wenig überrascht.

Schnell wurde mir jedoch klar, dass meine .env-Datei die folgenden Berechtigungen hat:

-rw-r--r--

... bedeutet, dass der Benutzer, dem die Datei gehört, Lese- und Schreibzugriff erhält, aber die Gruppe und die Welt können nur lesen. Da mein aktueller Benutzer Mitglied der Gruppe groupwww-data ist, kann er nur lesen, nicht schreiben.

(Sie können Ihre Dateiberechtigungen überprüfen, indem Sie $ ls -la ausführen.)

Wenn Sie dieselbe Situation haben, haben Sie zwei Möglichkeiten. Lösen Sie die Dateiberechtigungen für diese Datei (mit chmod) oder verwenden Sie Sudo, um Ihre PHP-Handwerkerbefehle auszuführen. Ich entschied mich für letzteres, da dies ein Produktionsserver für mich ist und ich die engen Berechtigungen mag.

1
jeff-h

Sie können es erstellen und den Befehl erneut ausführen.

# cd /var/www/laravel 
# cp .env.example .env       //renames .env.example to .env
# php artisan key:generate 
Application key set successfully.
0
Steve Junior