OSXでPowとnginxを併用した開発環境を作る

あけましておめでとうございます。今年もよろしくお願いします。

Pow、いいですよね。Rackアプリを開発する際には往々にして役立つと思います。Powderと組み合わせるともっといい感じです。

さて、そのPowですが、80を専有してしまう(Powが実際に動いているポートは20559なのですが、インストール時に80->20559に勝手にPort Forwardingしてしまう)ので、Rackアプリ以外の開発の際には邪魔だったりします。ので、それを解消してnginxと併用していい感じにしよう!という試みです。

Powインストール

まずはPowをインストールします。brewにもパッケージはあるのですが、いろいろな設定を自動でやってくれなかったりしてbrew版powは使い勝手がよろしくないので、インストールスクリプトをそのまま実行したほうがいいと思います。

$ curl get.pow.cx | sh

インストールが終わったら、80->20559へのforwardingを消すために以下のコマンドを実行します。

$ sudo pfctl -a "com.apple/250.PowFirewall" -F all 2>/dev/null || true
$ sudo launchctl unload /Library/LaunchDaemons/cx.pow.firewall.plist 2>/dev/null || true
$ sudo rm -f /Library/LaunchDaemons/cx.pow.firewall.plist

nginxインストール

nginxはbrewでインストールします。

$ brew install nginx

設定ファイルをいじります。

あとはport80をlistenするのでroot権限でnginx起動コマンドを叩いて終わりです。

$ sudo nginx

めんどくさいので端折ったところが多々あります、なにかあったらコメント欄か@にメンション飛ばして聞いてください。