У меня есть приложение Laravel, которое работает хорошо, но всякий раз, когда я просматриваю файл журнала, появляются сотни ошибок.
production.ERROR: No application encryption key has been specified. {"exception":"[object] (RuntimeException(code: 0): No application encryption key has been specified.
существуют в файле журнала. В файле .env есть ключ, и я также попробовал команду php artisan key:generate, но ошибка по-прежнему генерируется в файле журнала без каких-либо видимых ошибок для пользователей.
Эта ошибка появляется только в файле журнала рабочего сервера, а не на моем компьютере разработки.
APP_KEY = base64: g7Ta + C5qVWSkdni9 / OUsoBNA9GgE3ANrtOquE + JfQv0 =
@EsmatullahArifi, вы никогда не должны публично раскрывать ключ своего приложения.
@GustavoStraube Ничего страшного, его много раз меняли, прежде чем поделиться. Я поделился старым только для того, чтобы продемонстрировать, что у меня есть правильный ключ. Это не настоящий ключ.






php artisan key:generate
Это сгенерирует случайный ключ, вы должны перезапустить сервер, и вы больше не должны видеть сообщение об ошибке.
выполните следующие команды, чтобы очистить кеш.
php artisan config:clear
php artisan config:cache
Я уже сказал, что использовал эту команду, но без изменений в журнале ошибок. Я пробовал и последние две команды.
@EsmatullahArifi, пожалуйста, вы уверены, что у вас есть ключ в файле .env? удалить файл .env.example (если существует)
Да, я уверен на все 100%. это происходит только на производственном сервере. На моем компьютере в журнале нет ошибок
Не могли бы вы объяснить, что делает каждая из этих команд? У меня была такая же проблема, и хотя я запускал config: clear, ошибка все равно отображалась. Теперь я запустил также config: cache, и я не хочу сглазить, но похоже, что это помогло.
проверьте переменную "key" в файле config / app.php, она должна быть
'key' => env('APP_KEY'),
ИЛИ
сделать так
'key' => "Your key",
И перезапустите свой php-сервер.
Я проверил, все в порядке в обоих файлах (.env и app.php)
Да, php artisan key:generate сгенерирует ключ для вас. как это в консоли
$ php artisan key:generate
Application key [base64:soAqqNW/Kk85OclhmCKXj+u4nZGF142gEZHEY0Y1NXA=] set successfully.
вам нужно скопировать этот ключ и поместить его в ваш .env файл в параметре APP_KEY=.
Тем не менее, сообщение об ошибке существует. Я уже применил этот шаг.
@EsmatullahArifi, пожалуйста, проверьте свои права доступа к файлам проекта
попробуйте эти команды:
composer install
php artisan key:generate
php artisan config:cache
как насчет composer dump-autoload?
Вы можете опубликовать свой config/app.php? и скрыть конфиденциальные учетные данные.
Добавьте пустой APP_KEY= в .env без значения, если он не существует, затем удалите config.php внутри bootstrap/cache, запустите php artisan key:generate
Я столкнулся с той же проблемой, которую я много искал, но в комментарии к видео на YouTube я нашел решение (я не уверен, что это решение хорошее или нет), но сработало для меня
скопируйте APP_KEY из файла .env
и в прошлом в файле app.php (расположенном в: your_project \ config)
Ваш app.php будет выглядеть так
.
.
.
‘key’ => env(‘APP_KEY’, ‘base64:insert key here’),
.
.
.
Я застрял с этой проблемой на целый день и, наконец, обнаружил, что это проблема с правами доступа к файлу .env. Файл, загруженный через scp, не имеет разрешений на чтение.
chmod -744 .env
Надеюсь, это поможет кому-то еще с той же проблемой.
Все, что вам нужно сделать, это
php artisan key:generate
Ссылка
https://web-brackets.com/discussion/5/-solved-no-application-encryption-key-has-been-specified-
попробуйте дать разрешение, если вы используете ubuntu: * chmod -R 777 **
Проверьте этот ссылка, надеюсь, он вам поможет.
вы можете показать значение
APP_KEY=вашего env?