2017-01-10 5 views
0

私はsudo php artisan serve --host 0.0.0.0 --port 80を使用してリモートサーバーにLaravelアプリケーションを展開しましたが、ログインするとTokenMismatchExceptionが表示されます。このアプリは私の地元の環境で正常に動作していると、私のログインフォームはなかった{{ csrf_field() }}Laravel artisanはリモートサーバーにサービスします

答えて

0

はこれを試してみてください含まれています

を私はあなたがます$ this->ミドルウェア(「認証」)を追加仮定しています。コントローラーのコンストラクターの内部で認証が機能するようにします。あなたのログイン/登録フォームの下に、{!!フォーム:: someElement !!}:

{!! csrf_field() !!} 

それとも、フォーム内のinputタグを使用している場合は、ただ単にタグの後にこれを追加します。すべての

<input type="hidden" name="_token" value="{{ csrf_token() }}"> 

TokenMismatchException in VerifyCsrfToken.php Line 67

+0

悪気を追加しないことがあるが、私は自分のフォームが含まれてい言及しました{{csrf_field()}}とその地元のdevの環境で作業します。リモートサーバーでの作業が停止します。 –

1

まず、プロダクションモードでphp artisan serveコマンドを使用しないでください。 laravelのpublic/index.phpファイルには、http://or.net/のようなbaseUrlを指摘しておかなければなりません。すべての依存関係を持つlaravelアプリケーションをブートストラップします。共有サーバーでのlaravelのホストの詳細については、this CW answerを参照してください。

CSRFトークン問題の解決策は、@ sujalPatelによって解決されます。あなたは

{!! csrf_field() !!}ない{{ csrf_field() }}

+0

違反はしませんが、私のフォームには{{csrf_field()}}とそのローカル開発環境の作業が含まれていると言われました。リモートサーバーでの作業が停止します。 –

関連する問題