ruby - rails 生成的项目开启服务后,为什么 “无法访问”
PHPz
PHPz 2017-04-22 08:59:10
0
4
1139

我时个新手……折腾好几天了 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 来开启服务,也是无法访问

PHPz
PHPz

学习是最好的投资!

모든 응답(4)
迷茫
  1. 이 "Linux 서버"真实的는 네트워크 반대편에 있는 서버인가요, 아니면 本地的 가상 머신인가요?

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

Peter_Zhu

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

방화벽을 꺼보세요

迷茫

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

를 추가할 수도 있습니다.
Peter_Zhu

해결되었습니다

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

행운을 빕니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿