Ruby Rails Mongrel Sever не может обслуживать OXS1.6 - PullRequest
1 голос
/ 15 апреля 2010

Я довольно новичок в Rails и Mac, и делаю свое первое развертывание ...

Я пытаюсь настроить приложение rails на новом мини-сервере Apple под управлением OXS1.6 (Snow Leopard). В настоящее время он работает нормально на моем новом iMac i7 (та же ОС).

Я запускаю монгрела с помощью этой команды:

mongrel_rails start -e production -p 3000 -d -a 127.0.0.1 --debug

И он начинает выдавать этот вывод в log / mongrel.log

** Daemonized, any open files are closed.  Look at log/mongrel.pid and log/mongrel.log for info.
** Starting Mongrel listening at 127.0.0.1:3000
** Installing debugging prefixed filters. Look in log/mongrel_debug for the files.
** Starting Rails with production environment...
/Library/Ruby/Gems/1.8/gems/rails-2.3.5/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_requirements is deprecated and will be removed on or after August 2010.  Use #requirement
/Users/danadmin/ServiceApp/ServiceApp/app/helpers/input_grid_manager.rb:9: warning: already initialized constant ID_PREFIX
/Users/danadmin/ServiceApp/ServiceApp/app/helpers/input_grid_manager.rb:10: warning: already initialized constant ADD_ID
** Rails loaded.
** Loading any Rails specific GemPlugins
** Signals ready.  TERM => stop.  USR2 => restart.  INT => stop (no restart).
** Rails signals registered.  HUP => reload (without restart).  It might not work well.
** Mongrel 1.1.5 available at 127.0.0.1:3000
** Writing PID file to log/mongrel.pid

Вывод на моем устройстве iMac такой же (включая предупреждения).

Разница в том, что доступ к http://127.0.0.1:3000 на моем iMac открывает страницу входа в приложение. Где, как на мини-сервере Mac, доступ к тому же результату приводит к 500 ошибке от монгрела: «Извините, но что-то пошло не так».

Как будто рельсы не работают. Я очень хорошо разбираюсь, если у меня есть несколько сообщений из файла журнала, чтобы направить меня, но у mongrel.log нет сообщения об ошибке (вывод остается таким же, как указано выше), а log / production.log пуст (что мне кажется, рельсы еще не начались?).

Мои драгоценные камни - все те же версии между компьютерами, как и код приложения; и никаких подсказок я не вижу ни в одном из журналов mongrel_debug, за исключением того, что rails.log на мини-сервере mac и iMac различаются.

После запуска и однократного доступа сначала идет rails.log с мини-сервера Mac:

D, [2010-04-15T13:45:34.870406 #6914] DEBUG -- : TRACING ON Thu Apr 15 13:45:34 +1200 2010
Thu Apr 15 13:46:08 +1200 2010 REQUEST /
--- !map:Mongrel::HttpParams 
SERVER_NAME: 127.0.0.1
HTTP_ACCEPT: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
HTTP_CACHE_CONTROL: max-age=0
HTTP_HOST: 127.0.0.1:3000
HTTP_USER_AGENT: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_0; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/5.0.342.9 Safari/533.2
REQUEST_PATH: /
SERVER_PROTOCOL: HTTP/1.1
HTTP_ACCEPT_LANGUAGE: en-US,en;q=0.8
REMOTE_ADDR: 127.0.0.1
PATH_INFO: /
SERVER_SOFTWARE: Mongrel 1.1.5
SCRIPT_NAME: /
HTTP_VERSION: HTTP/1.1
REQUEST_URI: /
SERVER_PORT: "3000"
HTTP_ACCEPT_CHARSET: ISO-8859-1,utf-8;q=0.7,*;q=0.3
REQUEST_METHOD: GET
GATEWAY_INTERFACE: CGI/1.2
HTTP_ACCEPT_ENCODING: gzip,deflate,sdch
HTTP_CONNECTION: keep-alive

Хотя на моем iMac это выглядит так же, за исключением добавления HTTP_COOKIE и HTTP_IF_NONE_MATCH, вот файл rails.log из моего iMac

# Logfile created on Thu Apr 15 13:41:42 +1200 2010 by logger.rb/22285
D, [2010-04-15T13:41:42.934088 #2070] DEBUG -- : TRACING ON Thu Apr 15 13:41:42 +1200 2010
Thu Apr 15 13:42:05 +1200 2010 REQUEST /
--- !map:Mongrel::HttpParams 
SERVER_NAME: 127.0.0.1
HTTP_ACCEPT: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
HTTP_HOST: 127.0.0.1:3000
HTTP_USER_AGENT: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/5.0.342.9 Safari/533.2
REQUEST_PATH: /
SERVER_PROTOCOL: HTTP/1.1
HTTP_IF_NONE_MATCH: "\"216cc63ce3c1f286ef8dd4f18f354f6e\""
HTTP_ACCEPT_LANGUAGE: en-US,en;q=0.8
REMOTE_ADDR: 127.0.0.1
PATH_INFO: /
SERVER_SOFTWARE: Mongrel 1.1.5
SCRIPT_NAME: /
HTTP_COOKIE: _ServiceApp_session=BAh7DDonY3VzdG9tZXJfbGlzdF9maWx0ZXJfam9iX3N0YXR1c19pZGn6Og9zZXNzaW9uX2lkIiU0ZTk1ZWZjMmViMGU3NjE2YzA0NDc2YTkxYzJlNDZiOToaY3VycmVudF9jdXN0b21lcl9uYW1lIilUSEUgQ1VTVE9NRVIgTkFNRSBORUVEUyBUTyBCRSBMT0FERUQ6EF9jc3JmX3Rva2VuIjFuT1JMUWk0NlZrWlM3c2lUN3BaWCs5NkhRajhxYnFwRnhzVHVTWXEvUWY0PToZam9iX2xpc3RfZmlsdGVyX3RleHQiADogam9iX2xpc3RfZmlsdGVyX2VtcGxveWVlX2lkafo6HmN1c3RvbWVyX2xpc3RfZmlsdGVyX3RleHQiAA%3D%3D--d01bc5d0b457ad524d16cb3402b5dfed9afce83d
HTTP_VERSION: HTTP/1.1
REQUEST_URI: /
SERVER_PORT: "3000"
HTTP_ACCEPT_CHARSET: ISO-8859-1,utf-8;q=0.7,*;q=0.3
REQUEST_METHOD: GET
GATEWAY_INTERFACE: CGI/1.2
HTTP_ACCEPT_ENCODING: gzip,deflate,sdch
HTTP_CONNECTION: keep-alive

Любое направление или идеи будут с благодарностью. Благодарю.

Ответы [ 2 ]

0 голосов
/ 16 апреля 2010

Также используйте пассажира для разработки и производства. Это время от времени уменьшает трудности с загрузкой шавок. Также вы можете использовать панель пассажира для запуска ваших приложений.

0 голосов
/ 15 апреля 2010

Я надеюсь, что вы настроили базу данных для своего приложения. Если нет, выполните rake db:create:all и перенесите базу данных rake db:migrate RAILS_ENV="production". Думаю, вы не настроили базу данных для производства.

Редактировать: Да, похоже, вы создали базу данных для разработки, но не для производства. Таким образом, он будет нормально работать в режиме разработки (т.е. на вашем iMac), но не в рабочем режиме. Создайте базу данных для производственного режима, введя первую команду, как показано выше.

...