8

私はPeepCodeの最初のRubyonRails 3チュートリアルに従っており、27〜29分でRailsサーバーを起動します。私の知る限り、Rails(およびRuby)は正常にインストールされています。

コマンドを実行するとrails server(ビデオの指示に従ってWindows 7コマンドプロンプトから)、次のメッセージが表示されます。

=> Booting WEBrick
=> Rails 3.1.3 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-12-02 18:37:57] INFO WEBrick 1.3.1
[2011-12-02 18:37:57] INFO ruby 1.9.3 (2011-10-30) [i386-mingw32]
[2011-12-02 18:37:57] INFO WEBrick::HTTPServer#start: pid=5584 port=3000

また、プロンプトに戻らず、実行中であることを示します。また、私にとって(そしてビデオと比較して)、これは成功したメッセージのように見えます。

ただし、http://0.0.0.0:3000ビデオの指示に従ってURLを参照すると、エラーが発生します(ビデオがRubyのデフォルトのインデックスページを開いている間)。私が得るエラーは次のとおりです。

Error 108 (net::ERR_ADDRESS_INVALID): Unknown error.

私はGoogleChromeを使用しているので、次のようにも表示されます。

http://0.0.0.0:3000/のWebページが一時的にダウンしているか、新しいWebアドレスに永続的に移動している可能性があります。

だから、私はこれを修正する方法を考えていましたか?

4

2 に答える 2

13

0.0.0.0は、WebrickがバインドしているIPアドレスです。これは、「すべてのインターフェイスでリッスンする」という意味です。つまり、内部アドレス(localhostまたは127.0.0.1)と、ネットワーク上の外部アドレス(192.168.1.xまたは10.0.10.x、またはに解決されるドメイン名)からこのアプリケーションに接続できます。このマシンがネットワーク上に持っているアドレス)。サーバーは、リクエストがどこから来たのかを気にしません。

ただし、「-b」または「--binding」オプションを指定してRailsサーバーを起動し、サーバーに127.0.0.1にバインドするように指示した場合、サーバーは外部インターフェースへの要求に応答しません。127.0.0.1またはlocalhostを引き続き使用できますが、ローカルまたは別のマシンから外部IPアドレスを使用してこのサーバーに接続することはできませんでした。

http:// 0.0.0.0:3000にアクセスすると、私のLinuxシステムで動作します。おそらく、視聴しているスクリーンキャストは、動作するMacを使用していました。私の推測では、0.0.0.0はWindowsではサポートされていません。

ボックスを使用している場合はlocalhostを使用し、別のマシンからアクセスしている場合はボックスのIPアドレスを使用します。0.0.0.0を理解するマシンを実行している場合でも、それが私が行うことです。

于 2011-12-03T06:18:47.143 に答える
3

次のコマンドでサーバーを起動できます。

rails server -b localhost

しかし、怠惰なタイピストとして、私の中で.bash_aliases、私はこのエイリアスを持っています

alias rs='r s -b localhost'

エイリアスを使用すると、次のコマンドでサーバーを起動できます。

rs
于 2011-12-03T14:16:32.563 に答える