찾다

 >  Q&A  >  본문

ruby - rails 生成的项目开启服务后,为什么 “无法访问”

我时个新手……折腾好几天了 TAT
现在用的是最新的rails,今天在linux (centos6.4) 安装好ruby,rails后新建的项目,启动 rails server后如下提示

=> Booting WEBrick
=> Rails 4.1.6 application starting in development on http://0.0.0.0:3000
=> Run rails server -h for more startup options
=> Ctrl-C to shutdown server
[2014-10-01 15:51:07] INFO WEBrick 1.3.1
[2014-10-01 15:51:07] INFO ruby 2.1.3 (2014-09-19) [i686-linux]
[2014-10-01 15:51:07] INFO WEBrick::HTTPServer#start: pid=30770 port=3000

但是我在浏览器访问 http://linux服务器IP:3000 确是无法访问……(因为不是本机当然不能用 127.0.0.1 去访问咯,即使有-b linux服务器IP 来开启服务,也是无法访问

PHPzPHPz2774일 전1117

모든 응답(4)나는 대답할 것이다

  • 迷茫

    迷茫2017-04-22 09:01:10

    1. 이 "Linux 서버"真实的는 네트워크 반대편에 있는 서버인가요, 아니면 本地的 가상 머신인가요?

    2. 실제 서버라면 방화벽 확인을 권장합니다. 가상 머신이라면 상위 머신에서 127.0.0.1:4000을 통해 프로젝트에 접근할 수 있도록 端口转发과 같은 把虚拟机的3000端口转发到母机器4000端口을 이용하여 가상 머신을 구성하는 것이 좋습니다.

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-22 09:01:10

    0.0.0.0을 들으면 누구나 액세스할 수 있도록 출력이 정상적으로 표시됩니다. 그래도 작동하지 않으면 방화벽을 확인하세요

    방화벽을 꺼보세요

    회신하다
    0
  • 迷茫

    迷茫2017-04-22 09:01:10

    가상 머신에서 가상 머신에 구성된 레일즈 환경에 외부 브라우저가 접근할 수 없는 문제 해결:
    레일 s -b192.168.xx.xx 사용
    -b 뒤에는 모니터링이 필요한 IP, 즉 서버의 IP 주소가 들어가야 접속이 가능합니다
    Rails 에 따라 서비스를 직접 열면 모니터링되는 내용은 http://localhost:3000 또는 127.0.0.1
    이기 때문입니다. 그래서 모니터링 IP를 변경해야 합니다. 물론 모니터링 포트를 변경하고 -pxxxx

    를 추가할 수도 있습니다.

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-22 09:01:10

    해결되었습니다

    rvmsudo Rails s -b 0.0.0.0 -p 80
    여기서 0.0.0.0은 허용되는 IP입니다.
    80은 포트입니다

    행운을 빕니다

    회신하다
    0
  • 취소회신하다