Không thể truy cập các cổng được gán cho Rails 4.2, nhưng 4.04 hoạt động tốt


8

Tôi đã cài đặt Ruby 2.1.2 và Rails 4.2.

Gói cài đặt chạy không có lỗi.

Tôi có thể làm một Rails C mà không có lỗi.

Rails s -p3004 khởi chạy với webrick hoặc mỏng không có lỗi

Khi tôi duyệt đến mytestsite: 3004 safari, firefox và chrome, tất cả báo cáo "không thể kết nối với máy chủ"

Không có lỗi hiển thị trong bất kỳ nhật ký hệ thống; syslog, lfd.log, auth.log hoặc bất kỳ nhật ký apache nào.

Nếu tôi khởi chạy trang 4.04 của mình, các cổng 3001, 3002 hoạt động tốt. Nếu tôi hạ xuống 4.04 và khởi chạy 4.2 trên cổng 3001 hoặc 3002, tôi gặp lỗi 'không thể kết nối với máy chủ'. Điều này có nghĩa với tôi rằng đó không phải là vấn đề tường lửa chặn cổng. Tuy nhiên, iptables -L báo cáo rằng cổng 3004 đang mở:

ACCEPT     tcp  --  anywhere             anywhere             ctstate NEW tcp dpt:3004

Báo cáo đường ray:

=> Booting WEBrick  
=> Rails 4.2.0.beta1 application starting in development on http://localhost:3004   
=> Run `rails server -h` for more startup options  
=> Ctrl-C to shutdown server  
[2014-09-02 21:31:06] INFO WEBrick 1.3.1  
[2014-09-02 21:31:06] INFO ruby 2.1.1 (2014-02-24) [x86_64-linux]  
[2014-09-02 21:31:06] INFO WEBrick::HTTPServer#start: pid=4599 port=3004  

(cùng kết quả với mỏng).

Telnet localhost 3004 hoạt động từ máy chủ tuy nhiên telnet từ máy chủ khác đến cổng và địa chỉ IP dẫn đến kết nối bị từ chối.

và ps báo cáo chương trình được tải:

ps aux|grep 3004  
user 1062 0.0 0.5 578600 183996 pts/2 Sl+ 20:15 0:03 /home/user/.rvm/rubies/ruby-    2.1.1/bin/ruby bin/rails s -p3004

Điều này cũng được xác nhận bởi netstat:

netstat -tpln | grep 3004  
tcp 0 0 127.0.0.1:3004 0.0.0.0:* LISTEN 1062/ruby  

nhưng mmap báo cáo cổng đã đóng:

Starting Nmap 6.40 ( http://nmap.org ) at 2014-09-02 21:33 UTC  
Nmap scan report for localhost (127.0.0.1)  
Host is up (0.000059s latency).  
rDNS record for 127.0.x.1: local_host.local_domain  
PORT STATE SERVICE  
3004/udp closed unknown  

Và một telnet đến máy chủ 3004 báo cáo kết nối bị từ chối.

Như tôi đã nói, tôi nghĩ đó là sự cố tường lửa ngoại trừ việc thay đổi sang cổng 3001, mà tôi biết để làm việc với Rails 4.04, đã thất bại với 4.2. Bất cứ ai có bất kỳ đề nghị?

Câu trả lời:


16

WEBrick bị ràng buộc với 127.0.0.1 chứ không phải INADDR_ANY, vì vậy bạn chỉ có thể truy cập nó qua địa chỉ đó. Nếu bạn muốn đặt địa chỉ mà nó liên kết, hãy sử dụng -btùy chọn. Ví dụ:

rails s -b 0.0.0.0 -p 3004
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.