Windows 7 Ultimate 64-битная / Mongrel / Apache 2.2 - PullRequest
0 голосов
/ 04 октября 2011

Я установил приложение Ruby on Rails на 64-битном ПК под управлением Windows 7. Ultimate.

3 экземпляра Mongrel используются для запуска программы rails и сбалансированы по нагрузке с помощью Apache 2.2.

Соответствующий раздел моего файла httpd.conf выглядит следующим образом:

---------- httpd.conf
#define mongrel cluster
<proxy balancer://mongrelcluster>
BalancerMember http://127.0.0.1:3001
BalancerMember http://127.0.0.1:3002
BalancerMember http://127.0.0.1:3003
</proxy>

Listen 3009

#forward requests to mongrel cluster
<virtualhost *:3009>


  ProxyPass / balancer://mongrelcluster/
  ProxyPassReverse / balancer://mongrelcluster/
  ProxyPreserveHost on
</virtualhost>
----------- httpd.conf

Я могу получить доступ к локальному узлу на портах 3001, 3002 и 3003 по отдельности без проблем.

Когда я пытаюсьчтобы получить доступ к localhost через порт 3009 через Apache, я получаю «Служба временно недоступна. Сервер временно не может обработать ваш запрос из-за простоя обслуживания или проблем с емкостью. Повторите попытку позже».сообщение об ошибке.

После проверки журналов ошибок Apache:

---- Error log 
[Tue Oct 04 12:46:37 2011] [notice] Child 6168: Child process is running  
[Tue Oct 04 12:46:38 2011] [notice] Child 6168: Acquired the start mutex.
[Tue Oct 04 12:46:38 2011] [notice] Child 6168: Starting 64 worker threads.
[Tue Oct 04 12:46:38 2011] [notice] Child 3052: Released the start mutex
[Tue Oct 04 12:46:39 2011] [notice] Child 3052: All worker threads have exited.
[Tue Oct 04 12:46:39 2011] [notice] Child 3052: Child process is exiting
[Tue Oct 04 12:46:39 2011] [notice] Child 6168: Starting thread to listen on port 80.
[Tue Oct 04 12:46:39 2011] [notice] Child 6168: Starting thread to listen on port 3009.
[Tue Oct 04 12:46:46 2011] [error] (OS 10013)An attempt was made to access a socket in a way forbidden by its access permissions.  : proxy: HTTP: attempt to connect to  127.0.0.1:3001 (127.0.0.1) failed
[Tue Oct 04 12:46:46 2011] [error] ap_proxy_connect_backend disabling worker for (127.0.0.1)
[Tue Oct 04 12:46:46 2011] [error] (OS 10013)An attempt was made to access a socket in a way forbidden by its access permissions.  : proxy: HTTP: attempt to connect to 127.0.0.1:3002 (127.0.0.1) failed
[Tue Oct 04 12:46:46 2011] [error] ap_proxy_connect_backend disabling worker for (127.0.0.1)
[Tue Oct 04 12:46:46 2011] [error] (OS 10013)An attempt was made to access a socket in a way forbidden by its access permissions.  : proxy: HTTP: attempt to connect to 127.0.0.1:3003 (127.0.0.1) failed
[Tue Oct 04 12:46:46 2011] [error] ap_proxy_connect_backend disabling worker for (127.0.0.1)
---- Error log 

Журнал ошибок Apache показывает, что соединение с экземплярами Mongrel как-то не удалось.

Мне кажется, проблема с Windows 7, потому что та же самая установка прекрасно работает в системе Windows XP.

Все предложения / советы / решения приветствуются.

1 Ответ

0 голосов
/ 04 октября 2011

Я бы предложил вам перейти на Linux или Mac OS X, когда дело доходит до ruby ​​на рельсах, и попробовать свои силы с Nginx . Это гораздо надежнее, стабильнее и быстрее. В Rails есть много драгоценных камней, которые очень полезны. Сообщество рубинов, если честно, просто не заботится об окнах. Дело в том, что эти драгоценные камни не обновляются для окон и в некоторых редких случаях не создаются для совместимости с Windows. Вы можете попытаться испачкать руки с Ubuntu (который я использую очень регулярно), а также сделать переход на nginx или WEBrick, который поставляется с самой установкой ruby, как вы уже знаете. Таким образом, чтобы лучше использовать Ruby on Rails, лучше выбраться из окон. Читать это

...