yujiro's blog

webエンジニアをしています。

vagrant sshしたら真っさらなサーバーになってしまうバグ

原因 virtualbox のマシンとvagrant の紐付けが解除されてしまってる なんで解除されるかは不明

【Rails】Form Object を作って Fat Model 解消に近づく

題名の通り、Form Object ですが、こんな感じで実装してるよってのを紹介したいと思います。

【Rails】 scope は 常に ActiveRecord_Relation を返す素晴らしいやつ

Rails で様々な条件で複合検索ができる画面を実装していて、フォームから受け取った値をそのままモデルに渡してコントローラは条件分岐なしにスッキリ実装したかった。 何の気なしに以下のようなコードを書いた。

Capybara Poltergeist で TypeError: undefined is not a function (evaluating 'Object.assign〜 というエラーが発生した

今まで poltergeist のオプションに js_errors: false を設定していたんだけど、 とある所で詰まって色々調べるために、true にしたら全く動かなくなった。

iptables についてのメモ

INPUT, OUTPUT ポリシーについて (httpの場合)

Flask で MVCライクな実装

github.com 中身の実装については後で書きたいと思います。

AWS S3で静的ファイルを独自ドメインで配信するまで

前提 ドメイン名は sample.com と仮定する。 S3に画像ファイルを置いて、image.sample.com というドメインでアクセスできるようにする。 S3はそれだけだと遅いので、CDNを利用する(CloudFlare)

Effective Ruby 読書メモ

セッターメソッド インスタンスメソッド内でセッターメソッドを使う場合はselfをつけないと 単なるローカル変数の定義になってしまう。 ただし、selfを使うのはその場合のみにしよう

メールサーバー迷惑メール対策

SPF 下記をTXTレコードに追加する。 v=spf1 +ip4:[ip_address] include:hoge.com ~all ※include をかかないと PASS しなかった

logrotate メモ

いつローテートさせたかを記録しているファイル /var/lib/logrotate/status

fluentd メモ

インストール & 設定 $ sudo su $ curl -L https://td-toolbelt.herokuapp.com/sh/install-ubuntu-trusty-td-agent2.sh | sh $ sudo /opt/td-agent/embedded/bin/fluent-gem install fluent-plugin-s3 $ sudo vi /etc/td-agent/td-agent.conf

PHP のバージョンをphpenv で管理する

初めに ソースからビルド・コンパイルする形がめちゃくちゃ不便だったので、phpenvを試してみる 構成は Ubuntu14.04 + php-fpm + nginx rbenv のようにプロジェクトごとにphp のバージョンを切り替えられる。最初からこれをつかえばよかった。 ここでは 7.1.…