web-dev-qa-db-ja.com

例外を解決する方法laravel 5.5?

プロジェクトをlaravel 5.4からlaravel 5.5にアップグレードしました。

私はローカル環境では問題ありませんが、サーバーではこの例外が発生します

よく検索しましたが、この問題が重複している可能性があることはわかっていますが、解決した解決策はありません!

環境が本番のときに夕暮れを登録しないようにするにはどうすればよいですか?

appServiceProvider.phpにこのコードを書きました:

public function register()
{
    // Dusk, if env is appropriate
    if ($this->app->environment('local', 'testing')) {
        $this->app->register(DuskServiceProvider::class);
    }
}

しかし、それは機能していないようです。誰でも助けることができますか?

編集済み:composer.jsonファイル:

 "require-dev": {
    "filp/whoops": "~2.0",
    "fzaninotto/faker": "~1.4",
    "mockery/mockery": "1.*",
    "phpunit/phpunit": "^7.0.3",
    "symfony/css-selector": "4.0.*",
    "symfony/dom-crawler": "4.0.0",
    "barryvdh/laravel-ide-helper": "^2.4",
    "laravel/dusk": "^2.0"
  },

例外は次のとおりです。

Exception
It is unsafe to run Dusk in production.
6

Laravel 5.5では、パッケージは自動的に検出およびロードされるため、おそらく夕暮れをロードしないように指示する必要があります。

1つの方法は、これをcomposer.jsonに追加することです

"extra": {
    "laravel": {
        "dont-discover": [
            "laravel/dusk"
        ]
    }
},

また、devの依存関係に追加することもできます。運用環境で展開する場合は、次を使用します。

composer install --no-dev

テイラーはそれについての記事を書いた ここ

19
CUGreen

localおよびtesting環境で動作するように設定されているため、動作しません。 「プロダクション」を追加する必要があると思います(プロダクションが.envファイル環境で「プロダクション」と呼ばれる場合:

public function register()
{
    // Dusk, if env is appropriate
    if ($this->app->environment('local', 'testing', 'production')) {
        $this->app->register(DuskServiceProvider::class);
    }
}

実動サーバーにインストールするとき、--no-devフラグを使用する必要がありました。

composer install --no-dev

幸運を!

4
Adam Kozlowski

.envという名前のファイルがソースフォルダーに含まれているかどうかを確認し、データベースのユーザー名とパスワードおよびその他の設定をセットアップします。

すべてを設定したが、.env.example.envに変更するのを忘れたため、同じ問題が発生しました。

1

開発環境でこの問題が発生していて、タイトルのために誤ってここに落ちた場合は、.envファイルを確認する必要があります開発用にセットアップされています。行を含める必要があります

APP_ENV=local

.envファイルがどのように見えるかの例を次に示します。 https://github.com/laravel/laravel/blob/master/.env.example

Laravel documentation: https://laravel.com/docs/5.7/configuration


また、composer.jsonでは、laravel/duskrequireではなくrequire-devの下にリストする必要があります。

0
Chrisjan