ponkiti's blog

主に自分用、イベント参加メモや備忘録として利用

rails sコマンド実行後にlocalhost:3000に接続できない場合(2)

自宅PCでもRailsをインストールしたが、Railsサーバを起動させようとしてうまくいかない。

どうやらファイヤーウォールを切っていなかったのがまずかったらしい。今回仮想マシンにインストールしたのはCentOS6。下記コマンドを実行してファイアーウォールを停止させると、Railsサーバは起動する。

[vagrant@localhost ~]$ sudo service iptables stop
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]

[vagrant@localhost ~]$ sudo chkconfig iptables off

下記のように、/etc/sysconfig/iptablesファイルに-A INPUT -p tcp -m tcp --dport 3000 -j ACCEPTを追記しなくても問題なかった。

最初はファイアーウォールを停止させずに/etc/sysconfig/iptablesファイルへの追記を行ったのだけど、localhost:3000に接続できず・・・。もしかしたらiptablesの再起動(service iptables restart)ができていなかっただけなのかも。

iptablesの設定で3000番ポートを有効にしているか、元からファイアーウォールを停止しているかで、結果的にはやっていることにそこまでの違いはないけれど、iptablesの理解が薄いので頭を整理しておく必要がありそうだ。

Huluで『Doctor Who(series 6)』を見ながら作業していたが、6時間近く時間を使ってしまった・・・・。