タグ

railsとエラーに関するmytechnoteのブックマーク (3)

  • Rails で CSRF トークン検証エラーが出ることがある

    自分で作った Rails 製ウェブアプリで出会った話ですが、ちょっと原因に悩んだので書いておきます。 概要 Rails 製のウェブアプリのログを眺めていると、しばしば CSRF トークン検証エラーが記録されていました。ログインページでログインする際にデータを POST したときに、 CSRF トークン検証エラーが出たようです。 状況的に、外部から攻撃を受けているわけではなく、ユーザーもブラウザからアクセスしたようでした。 結局のところ、バグなどではなく、期待される挙動だったのですが、ちょっと悩んだので書いておきます。 再現手順 ブラウザ起動後の初回アクセスで、ウェブアプリのページを複数同時に開くと発生します。 「複数同時」というのがポイントです。 具体的には、以下の手順で発生します。 準備として Rails 製ウェブアプリで POST を使う複数のページを、二つブックマークに登録しておきま

  • Rails 5の404/500エラーページ、簡単作成手順

    Railsアプリケーションで簡単に自分で作った404/500エラーページを表示させる手順です。404/500エラーページもユーザービリティの面やコンバージョンの面で非常に重要ですよね! あるRailsアプリケーションでルーティング系のエラーはルートにリダイレクトするようにしていたのですが、SEO的にはNGだと知りました。 『ソフト404エラー』と呼ばれており、ルーティングがないのに404ステータスを返さないのは検索エンジンさん的にはなはだそうです。 ということで、Webサービスを作るときにはルーティングと、エラー時の挙動をしっかり制御したほうがいいと反省中です。

    Rails 5の404/500エラーページ、簡単作成手順
  • Railsを本番稼働させるときはnginxとsession storeの設定に注意 - Qiita

    それぞれ上限値を越えてしまったために、出たエラーです。 回避する設定は以下。 ※追記(2014/04/15 21:00) そもそもnginxでheaderがデカイって怒られている原因はcookieに一杯値が入っていただけで、その原因はsessionに値をたくさん突っ込むようなことをしていたからなので、そもそもその時点で問題があります。 今回は一度nginxのエラーを解消しなければcookieの問題も気が付かなかったのですが、session storeをcookie以外にした時点でnginxのproxy bufferの設定は不要かなと思いました。 ということで、nginxの設定については蛇足ですね。 nginxのproxy bufferの設定 参考 参考URLの用にnginx.confのhttp{}の中に以下の設定を追加するだけで直りました。 デフォルトのproxy bufferのサイズを超

    Railsを本番稼働させるときはnginxとsession storeの設定に注意 - Qiita
  • 1