Ich bin neu in Laravel und ich versuche, den Artisan-Befehl zu verwenden ...
php artisan serve
Es zeigt an...
Der Laravel-Entwicklungsserver wurde gestartet: http://127.0.0.1:80
Es wird jedoch nicht automatisch gestartet und bei manueller Eingabe von http://127.0.0.1:80 wird der folgende Fehler angezeigt:
RuntimeException Es wurde kein Anwendungsverschlüsselungsschlüssel angegeben.
Irgendwelche Ideen? Ich verwende Laravel Framework 5.5-dev.
From Encryption - Laravel - Das PHP Framework für Web Artisans :
"Bevor Sie Laravels Verschlüsselungsprogramm verwenden können, müssen Sie in Ihrer Konfigurationsdatei config/app.php eine Schlüsseloption festlegen. Verwenden Sie den Befehl
php artisan key:generate
, um diesen Schlüssel zu generieren."
Ich habe festgestellt, dass mit dieser komplexen Internetabfrage in google.com:
"laravel add encryption key" (Ja, es hat sogar mit dem Tippfehler funktioniert!)
In meinem Fall musste ich auch die zwischengespeicherten Konfigurationsdateien zurücksetzen:
php artisan key:generate
php artisan config:cache
Öffnen Sie die Eingabeaufforderung im Stammverzeichnis Ihres Projekts und führen Sie den folgenden Befehl aus:
php artisan key:generate
Es wird ein Anwendungsschlüssel für Ihre Anwendung generiert.
Sie finden den generierten Anwendungsschlüssel (APP_KEY) in der Datei .env
.
Führen Sie einfach diesen Befehl aus:
php artisan key:generate
Kopieren Sie .env.example
nach .env
:
cp -a .env.example .env
Generiere einen Schlüssel:
php artisan key:generate
Erst dann ausführen:
php artisan serve
cp .env.example .env
wenn keine .env-Datei vorhanden ist. php artisan key:generate
Befehl funktioniert bei mir. Es generiert den Verschlüsselungsschlüssel
Ich musste meinem Projekt eine . Env -Datei hinzufügen und dann den Inhalt von . Env.example kopieren, damit der key:generate
funktioniert. Ich bin mir nicht sicher, warum beim Starten des Projekts keine . Env -Datei erstellt wurde.
php artisan key:generate
php artisan config:cache
funktionierte für mich, aber es musste in einer Eingabeaufforderung unter Windows erfolgen.
Es hat nicht funktioniert, es im Terminal in PHPStorm zu machen.
Ein häufiges Problem, das bei der Arbeit mit einer Laravel -Anwendung auftreten kann, ist die Ausnahme:
RuntimeException Es wurde kein Anwendungsverschlüsselungsschlüssel angegeben.
Dies tritt häufig auf, wenn Sie eine vorhandene Laravel -Anwendung öffnen, in der Sie die Datei .env.example
nach .env
kopieren, aber keinen Wert für die Variable APP_KEY
festlegen.
Geben Sie in der Befehlszeile den folgenden Artisan-Befehl ein, um einen Schlüssel zu generieren:
php artisan key:generate
Dies generiert einen zufälligen Schlüssel für APP_KEY
. Nach Abschluss der Bearbeitung von .env
geben Sie diesen Befehl in Ihr Terminal ein, um den Cache zu löschen: php artisan config:cache
Wenn Sie den Standard-Webserver von PHP verwenden (z. B. php artisan serve
), müssen Sie den Server neu starten die Werte Ihrer .env
-Datei ändern. Jetzt wird diese Fehlermeldung nicht mehr angezeigt.
Befolgen Sie diese Schritte:
php artisan key:generate
php artisan config:cache
php artisan serve
Okay, ich schreibe noch eine Anweisung, weil ich hier keine klare Antwort gefunden habe. Wenn Sie also mit solchen Problemen konfrontiert sind, gehen Sie wie folgt vor:
Sie sollten nicht nur eine leere . Env Datei erstellen, sondern diese mit dem Inhalt von . Env.example füllen.
pHP Handwerker Schlüssel: generieren
Anwendungsschlüssel [base64: wbvPP9pBOwifnwu84BeKAVzmwM4TLvcVFowLcPAi6nA =] wurde erfolgreich festgelegt.
APP_KEY = base64: wbvPP9pBOwifnwu84BeKAVzmwM4TLvcVFowLcPAi6nA =
pHP Artisan Config: Cache
Das ist es.
Sie können den Anwendungsverschlüsselungsschlüssel mit dem folgenden Befehl generieren:
php artisan key:generate
Erstellen Sie dann eine Cache-Datei zum schnelleren Laden der Konfiguration mit dem folgenden Befehl:
php artisan config:cache
Oder stellen Sie die Anwendung mit dem folgenden Befehl auf dem Entwicklungsserver PHP bereit:
php artisan serve
Das ist es!
Wenn Sie ein Projekt git-klonen, kann dieses Problem normalerweise auftreten.
.env
vorhanden istphp artisan key:generate
aus und dann sollte es appkey in .env erzeugenphp artisan serve
und es sollte funktionieren.Ich bin auf dieses Problem gestoßen, als ich den Inhalt meines Laravel -Projekts (beispielsweise sites/oldname) manuell in ein neues Verzeichnis auf meinem Mac kopiert habe (beispielsweise sites/newname). Da ich manuell per Drag & Drop gearbeitet habe, wurden die versteckten Dateien, nämlich '.env', nicht abgerufen. Als ich mir sites/oldname genauer ansah, sah ich .editorconfig, .env, .env.example, .gitatributes, .styleci.yml usw.
Der Fehler verschwand, als ich die versteckten Dateien in das neue Verzeichnis kopierte.
"Es wurde kein Anwendungsverschlüsselungsschlüssel angegeben" ist Laravel sprich für "Ihre .env-Datei fehlt".