web-dev-qa-db-ja.com

Laravel 5.8、職人コマンドエラー:無効な名前のためdotenvファイルの解析に失敗しました

この問題は、共有ホスティングでLaravel 5.8でのみ発生します。

Laravel 5.7。

Laravel 5.8。

問題は:

私がphp artisanコマンドを実行するたびに(Laravel 5.8を使用した共有ホスティングで)このエラーが発生しました

環境ファイルが無効です!名前が無効なため、dotenvファイルの解析に失敗しました。

[APP_NAME]で失敗しました。

私の.envの最初の行は:APP_NAME=rased

また、Laravel 5.8に更新した後の私のサイトは、白い空白のページになっています!

5

私はまったく同じ問題を抱えていましたが、解決策は異なりました。 CRLFは違いを生じませんでした。

これは私を不快にさせ、Cスタイルのコメントがサポートされなくなったことをどこかで読みました。私のenvファイルには何も含まれていませんでしたが、必死で次の行をファイルの先頭に追加しました。

# getting tiresome.

言葉遣いは重要ではないと思いますが、重要なのはコメントがあったことです。

その後、うまくいきました。理由はわかりませんが、実際にはわかりました。

1

Laravel 5.5からLaravel 5.8。

環境ファイルが無効です!名前が無効なため、dotenvファイルの解析に失敗しました。 [// APP_ENV]で失敗しました。

5.5はAPP_ENVでCスタイルのコメントを受け入れます。

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

5.8はできませんが。 #コメントに対応:

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

これらの定義にスペースのない真新しい5.8アプリケーションのインストール時にスペースを削除してみました。それはそれを修正しませんでした。

不思議なことに、ファイル内の他の場所にはまだCスタイルのコメントがあります。APP_ENVのみですか?

1
Paul

Laravel 6.12.0。

.envファイルの上部に空白の新しい行/スペースを追加することで、この問題を解決できました。

.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

他の誰かがここに来て、彼らの問題を解決していない場合。私はこの問題に遭遇し、ハイフンを使用して環境変数名を区切ることが原因であることがわかりました。

NOM-OPEN="2020/01/24"

これは、Laravel= 5.7までは問題ありませんでしたが、5.8に落ちました。これを解決するには、ハイフンをアンダースコアに変更します。

NOM_OPEN="2020/01/24"

変数へのすべての参照を更新することを忘れないでください!

0
jaydubyasee

MAIL_FROM_NAME =アカウントの確認

私は2つの単語の間にスペースを空けていましたちょうどそれを避けるようにしてください:Account_confirmation

MAIL_FROM_NAME = Account_confirmation(正解)

0
YOUNES CHELLAF

.envのエンコーディングを変更して解決しました。

ありがとう

0
kenyo