У меня установлен Ruby 2.1.2 и Rails 4.2.
Установка пакета выполняется без ошибок.
Я могу выполнить Rails C без ошибок.
Rails s -p3004 запускается с помощью webrick или thin без ошибок
Когда я захожу на mytestsite: 3004 safari, firefox и chrome, все сообщают, что "не удается подключиться к серверу"
Никаких ошибок не отображается в системных журналах; syslog, lfd.log, auth.log или любой из журналов apache.
Если я запустил свой сайт 4.04, порты 3001, 3002 работают нормально. Если я отключаю 4.04 и запускаю 4.2 на порте 3001 или 3002, я получаю ошибку «не могу подключиться к серверу». Мне кажется, это означает, что порт не блокирует проблема брандмауэра. Тем не менее, iptables -L сообщает, что порт 3004 открыт:
ACCEPT tcp -- anywhere anywhere ctstate NEW tcp dpt:3004
Отчеты Rails:
=> 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
(тот же результат с тонким).
Telnet localhost 3004 работает с сервера, однако telnet с другого сервера на порт и IP-адрес приводит к отказу в соединении.
и ps сообщает, что программа загружена:
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
что также подтверждается netstat:
netstat -tpln | grep 3004
tcp 0 0 127.0.0.1:3004 0.0.0.0:* LISTEN 1062/ruby
но mmap сообщает, что порт закрыт:
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
И телнет на сервер 3004 сообщает об отказе в соединении.
Как я уже сказал, я бы подумал, что это проблема брандмауэра, за исключением того, что переход на порт 3001, который, как я знаю, работает с Rails 4.04, не работает с 4.2. У кого-нибудь есть предложения?
WEBrick привязан к 127.0.0.1, а не к INADDR_ANY, поэтому вы можете получить к нему доступ только через этот адрес. Если вы хотите установить, к какому адресу он привязывается, используйте -b
вариант. Например:
rails s -b 0.0.0.0 -p 3004