きゃまなかのブログ

新卒6年目の WEB エンジニアです。 Ruby on Rails の TIPS を中心にブログ書いてます。 去年まで運用・保守のエンジニアだったので、サーバサイドの記事もたまに書きます。 よろしくお願いします。

【Ruby on Rails】サーバ間で authenticity token がマッチせず、フォーム送信に失敗していた時の話

概要 状況の整理 原因 対応策 結論 最後に 概要 Ruby on Rails でアプリケーションを作成すると ApplicationController の中に以下のコードがデフォルトで記載されています。 # Prevent CSRF attacks by raising an exception. # For APIs, you may want to …

【Ruby on Rails】オプション付きのコマンドライン引数を扱う

概要 自作コマンド --help (-h) オプション --version (-v) オプション --message (-m) オプション --uppercase (-u) オプション 例外処理 詰まったポイント オプション値が必要な場合は明示的に指定する optparse のバグ? 最後に コマンド化する まとめ 概…

【Java】String と StringBuilder の == 演算子と equals メソッドの違い

概要 はじめに String クラスの場合 SringBuilder クラスの場合 String クラスと StringBuilder クラスを混ぜた場合 String クラスで1つ注意を・・ まとめ 概要 仕事で Java を扱うようになったので、年末年始の休みを利用して Java SE8 Silver の試験を受…

【WordPress】定期的にバックアップを取るクーロンをシェルスクリプトで実装

概要 ソースコード DB のバックアップ ソースコードバックアップ スクリプトのクーロン化 注意点 最後に 概要 WordPress ではアップデートやプラグイン追加の際に、何か問題が発生する可能性があるので、定期的にバックアップを取っておくのが良いとされてい…

【AWS】WordPress でサイト構築時に phpMyAdmin をブラウザから見れるようにする

概要 対応内容 phpMyAdmin をブラウザから見れるようにする DB アカウントのパスワードを変更する 最後に 概要 AWS で WordPress を使えないかと思って調べてたところ、丁度良いのがあったので試してみました。 サイトの構築は以下の手順通りでとても簡単に…

【SSH】最近触らなくなった?SSH の設定ファイルを見直してみる

概要 やる事リスト はじめに 対応手順 1. サーバーログイン 2. 公開鍵をサーバーに登録 3. /etc/ssh/sshd_config の修正 3.1. 認証方式を変更 3.2. 認証時の閾値変更 3.3. ポート番号を変更 3.4. root ユーザーのログインを禁止 3.5. プロトコルを Version 2…

【Ruby on Rails】POST リクエストにリトライ処理を入れる

概要 はじめに 対応方針 サンプルコード まとめ 概要 HTTP リクエストは必ずしも成功するものではありません。 リクエストを受け取るサーバ側の問題だったり、ネットワークの問題だったりで稀に失敗する事があります。 そう言った場合にリトライ処理(再送処…

【Ruby on Rails】rubocop と pre-commit を利用して git commit 時にコーディングチェックを行う

概要 rubocop とは 使い方 注意点 pre-commit とは 使い方 設定を解除したい場合 まとめ 概要 Rails アプリケーションに rubocop と pre-commit という gem をインストールして、git commit 時にコーディングチェックを行うようにします。 もし、コーディン…

【Ruby on Rails】オートコンプリート機能付き検索フォームを実装する

概要 gem の紹介 対応手順 1. Gemfile の修正 2. application.js の修正 3. Controller の修正 full オプション 4. ルーティングの設定 5. View の修正 6. form の実装 7. 検索機能の実装 まとめ 概要 Ruby on Rails でオートコンプリート機能付きの検索フォ…

【Ruby on Rails】Mysql2::Error: Data too long for column 'xxxxx' at row 1:

概要 エラー文言 原因 解決策 何のデータ型にすれば良いのか? 日本語文字って何バイトか? 例外処理を入れる まとめ 概要 自分が担当しているシステムでユーザーからデータの保存ができないとお問い合わせを受けたことがあります。 システムが高負荷になっ…

【Apache】502 Bad Gateway proxy: error reading status line from remote server

概要 エラー文言 原因 解決策 パフォーマンス確認 概要 内部ネットワークからインターネットへのアクセスをプロキシしているサーバで稀に 502 Bad Gateway のエラーを返していることがありました。 リクエスト元のサーバではリトライ処理を入れていたので問…

【Apache】http 通信を https 通信に変換してプロキシする

概要 必要なパッケージ 対応方法 余談 概要 内部ネットワークのサーバがインターネット上のサーバにアクセスする場合、セキュリティ上の理由でプロキシサーバを経由してアクセスする場合が多いと思います。 参考:プロキシサーバーを使うと、なぜセキュリテ…

HBase とは?HBase 初心者が最初に知っておいた方がいいと思った事まとめ

概要 HBase とは? 構成 Master サーバ Region サーバ データ構造 HBase の書き込み まとめ 概要 新しく HBase を扱うサーバ担当になりました。 IT 業界ではデータ利活用の分野が活発になっており、ビッグデータを安全かつ高速に扱える HBase のようなプラッ…

【Ruby on Rails】whenever を使って定期的にバッチ処理を行う

概要 導入方法 gem インストール 設定ファイル生成 定期的に実行したい処理を記載 設定の反映・削除など 設定の確認 設定の反映 設定の削除 まとめ 概要 Ruby on Rails で定期的にバッチ処理を実行する方法をまとめます。 定期的に処理を実行したい場合、ク…

【Linux】xargs コマンドの使い方がよく分からない

概要 xargs とは よく見る利用法 高速に並列処理できる exec オプションを使った場合 xargs コマンドを使った場合 Argument list too long の制限を受けない ドライランオプション 引数の場所を指定する 便利なワンライナー 最後に 概要 結構複雑な処理をサ…