web-dev-qa-db-fra.com

Laravel 5.8, erreur de commandes artisanales: échec de l'analyse du fichier dotenv en raison d'un nom non valide

Ce problème se produit uniquement avec Laravel 5.8 sur mon hébergement partagé.

Cela fonctionne bien dans mon hébergement partagé avec Laravel 5.7.

Il fonctionne très bien dans mon environnement local avec Laravel 5.8.

le problème est:

chaque fois que je lance des commandes php artisan (sur mon hébergement partagé avec Laravel 5.8 uniquement), j'ai cette erreur

Le fichier d'environnement n'est pas valide! Impossible d'analyser le fichier dotenv en raison d'un nom non valide.

Échec à [APP_NAME].

ma première ligne .env est: APP_NAME=rased

Aussi mon site après la mise à jour vers Laravel 5.8 devient une page blanche blanche!

5
Abdulaziz Tayyar

J'ai eu exactement le même problème, mais une solution différente. Le CRLF n'a fait aucune différence.

Cela me rendait fou, et j'ai lu quelque part que les commentaires de style C n'étaient plus pris en charge. Mon fichier env n'en contenait aucun, mais en désespoir de cause, j'ai ajouté la ligne suivante en haut du fichier:

# getting tiresome.

Je ne pense pas que le libellé soit important, mais l'élément clé était qu'il y avait un commentaire.

Après cela, cela a fonctionné. Je ne sais pas pourquoi, mais ça l'a fait.

1
Relaxing In Cyprus

J'ai reçu une erreur similaire lors de la mise à niveau de Laravel 5.5 vers Laravel 5.8.

Le fichier d'environnement n'est pas valide! Impossible d'analyser le fichier dotenv en raison d'un nom non valide. Échec à [// APP_ENV].

5.5 accepterait les commentaires de style C sur APP_ENV:

// env file setup for production environment
//APP_ENV = production
//APP_DEBUG = false
// env file setup for local environment
APP_ENV = local
APP_DEBUG = true

Alors que 5.8 ne le fera pas. # fonctionne pour les commentaires:

# env file setup for production environment
#APP_ENV = production
#APP_DEBUG = false
# env file setup for local environment
APP_ENV=local
APP_DEBUG=true

J'avais essayé de supprimer les espaces comme une nouvelle application 5.8 installe sans espaces dans ces définitions. Cela ne l'a pas corrigé.

Curieusement, j'ai encore des commentaires de style C à d'autres endroits du fichier, donc uniquement pour APP_ENV?

1
Paul

J'ai récemment rencontré ce même problème sur mon application pour Laravel 6.12.0.

J'ai pu résoudre ce problème en ajoutant une nouvelle ligne/un espace vide en haut du .env fichier.

Exemple de fichier .env:

    [add a new line here]
    APP_NAME=Laravel
    APP_ENV=local
    APP_KEY=
    APP_DEBUG=true
    APP_URL=http://localhost

    LOG_CHANNEL=stack

    DB_CONNECTION=mysql
    DB_Host=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=laravel
    DB_USERNAME=root
    DB_PASSWORD=

    BROADCAST_DRIVER=log
    CACHE_DRIVER=file
    QUEUE_CONNECTION=sync
    SESSION_DRIVER=file
    SESSION_LIFETIME=120

    REDIS_Host=127.0.0.1
    REDIS_PASSWORD=null
    REDIS_PORT=6379

    MAIL_DRIVER=smtp
    MAIL_Host=smtp.mailtrap.io
    MAIL_PORT=2525
    MAIL_USERNAME=null
    MAIL_PASSWORD=null
    MAIL_ENCRYPTION=null
    MAIL_FROM_ADDRESS=null
    MAIL_FROM_NAME="${APP_NAME}"

    AWS_ACCESS_KEY_ID=
    AWS_SECRET_ACCESS_KEY=
    AWS_DEFAULT_REGION=us-east-1
    AWS_BUCKET=

    PUSHER_APP_ID=
    PUSHER_APP_KEY=
    PUSHER_APP_SECRET=
    PUSHER_APP_CLUSTER=mt1

    MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
    MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
0
lzoesch

Au cas où quelqu'un d'autre arriverait ici et n'aurait pas résolu son problème. J'ai rencontré ce problème et j'ai découvert qu'il était dû à l'utilisation d'un trait d'union pour séparer le nom de la variable d'environnement.

NOM-OPEN="2020/01/24"

Cela était correct jusqu'à Laravel 5.7 mais a chuté pour 5.8. Pour le résoudre, changez le trait d'union en un trait de soulignement.

NOM_OPEN="2020/01/24"

N'oubliez pas de mettre à jour toutes les références à la variable!

0
jaydubyasee

MAIL_FROM_NAME = Confirmation de compte

je faisais juste des espaces entre les deux mots Essayez juste de l'éviter comme: Account_confirmation

MAIL_FROM_NAME = Confirmation de compte (correcte)

0
YOUNES CHELLAF

J'ai changé l'encodage de .env et il a été résolu.

Merci

0
kenyo