指定された入力でデータベースを更新する更新フォームがあります。私はLaravelの検証 指定された電子メールが一意であるかどうかを確認するための更新バリデーターを作成します(そうでない場合は、検証エラーをスローして更新ページを再読み込みする必要があります)。
これは私のバリデーターです:
public function rules()
{
$contact_guid = $this->route('contact_guid');
return [
'contact_email' => [
Rule::unique('contact')->ignore($contact_guid, 'contact_guid'),
],
];
}
public function messages()
{
return [
'contact_email.required' => 'E-mail is required.',
'contact_email.unique' => 'This e-mail is already in use.',
];
}
問題は、いくつかの連絡先が
502 error
特定の固有の電子メールおよび他の連絡先では、異なる固有の電子メールで502エラーが発生します。一度削除すると気づきました
'contact_email.unique' => 'This e-mail is already in use.',
私のアプリケーションは正常に動作し、それは私に
502 error
。
編集:
メッセージの長さがわかりました
'contact_email.unique' => 'This e-mail is already in use.',
、それは私に502の悪いゲートウェイをより頻繁に与えます。
回答 2 件
私の場合、大きなヘッダーを処理するようにnginxが構成されていないことが原因で発生しました。これは、ログに表示されます。
upstream sent too big header while reading response header from upstream
解決策は、これらの行をnginx構成に追加することでした。
fastcgi_buffers 16 16k; fastcgi_buffer_size 32k;
関連記事
- laravel 8フォーム検証が機能を停止し、エラーをスローします
- それ以外の場合、Dartのブロックでセミコロンにエラーが発生します
- php artisanmigrateの実行時にLaravelと互換性のない外部キーエラーが発生しました
- 各ユーザーのLaravel固有の検証
- VBA関数はマクロとして実行されますが、関数で呼び出すとエラーが発生します
- ブート修復によりESPパーティションエラーが発生する
- Laravel 8:ParseError構文エラーを修正する方法、予期しない ';'
- appjsの実行中に、コンソールでエラーが発生します
- laravelのエラーvendor \ laravel \ framework \ src \ Illuminate \ Container \ Containerphp:833
関連した質問
- Laravel 8MACでXAMPPデータベースを使用してエラーを移行する
- Laravel:製品を作成しようとしたときの整合性制約違反
- model - : query();と同等のクエリビルダー
- 検索後LaravelでPDFにエクスポートしますか?
- 不正な形式のHTTPリクエストLaravel
- ビューブレードで非オブジェクトのプロパティ「id」を取得しようとしています
- file_put_contentsを使用して、laravelのパブリックディレクトリからファイルを作成します
- Laravel 8:GoogleRecaptchaの応答がログインフォームに表示されない
- Laravelで多対多の関係を見る
- Laravel7スケジューラーでサーバーコマンドを実行する
HTTP 502:Bad Gateway応答は、デフォルトでLaravelによって出力されるものではなく、サーバーによって出力されるものです。
ただし、無効な応答がアプリケーションに起因している可能性は十分にあるため、デバッグを試みることは理にかなっています。
このような問題には、より多くの原因が考えられます。それらの概要と考えられる修正を以下に示します。
Laravelでデバッグが有効になっていることを確認してください
.env
ファイルを作成し、キャッシュをクリアしました。ファイルのアクセス許可が正しく設定されていません。 (サーバーによって異なりますが、一般的な経験則)ファイルの場合は644、フォルダー/ディレクトリの場合は755である必要があります。
PHPファイルの1つにエラーがあります-有効にしてみてください
display_errors
PHP構成のオプション。PHPのメモリとプロセスの制限-
memory_limit
PHP構成で。その他のPHPプロセスの制限-サーバー管理者/ホスティングプロバイダーに確認してください
破損したPHPモジュール、拡張機能、ビルド-サーバー管理者/ホスティングプロバイダーに確認してください
あいまい-ポイント1〜6で修正が生成されない場合、通常、最善のアクションはApacheエラーログを確認することです。
TL;DR:ネットワーク/システム管理者に原因を特定してもらう必要があります
HTTP 502
。 Apacheエラーログはおそらくあなたに非常に良い兆候を与えるでしょう。