Mac OS X環境で、PowというRailsサーバーを使うと、
LaunchDaemonを使用して自動起動してくれ、http://プロジェクト名.dev/ で簡単にRailsアプリにアクセスできます。
ただ、初期状態だと、TCPの80番ポートを全てPowが取ってしまい、Apacheなどで80番ポートを利用できなくなります。
無効化する方法がどこにも書かれていなかったのですが、以下のコマンドで無効化できます。
sudo launchctl unload /Library/LaunchDaemons/cx.pow.firewall.plist
(11/10/31 追記)
これだけでは無効にならない場合
sudo rm /Library/LaunchDaemons/cx.pow.firewall.plist
を実行し、cx.pow.firewallを削除したうえでMacを再起動してください。
Powは実際には20559番ポートで動作しています。
「cx.pow.firewall」というデーモンが、ipfwを使用して、
80番ポートに飛んできたリクエストを20559番ポートに飛ばしているので、これを切れば80番ポートは占有されなくなります。
ただ、この設定を行うと、当然80番ポートからPowにはアクセスできなくなるため、
「http://プロジェクト名.dev/」ではアクセスできず、「http://プロジェクト名.dev:20559/」と入力する必要が出てきます。
これだと不便なので、ApacheのRewriteEngineを使用して飛ばすように設定します。
1. /private/etc/apache2/httpd.conf の以下の行のコメントアウトを外す
# Virtual hosts
Include /private/etc/apache2/extra/httpd-vhosts.conf
2. /private/etc/apache2/extra/httpd-vhosts.conf に以下の設定を追加
<VirtualHost *:80>
ServerName dev
ServerAlias dev *.dev
RewriteEngine On
RewriteRule (.*) http://%{HTTP_HOST}:20559$1
</VirtualHost>