私は Rails と Mac にかなり慣れていないので、初めてデプロイします...
OXS1.6 (Snow Leopard) を実行している新しい Apple ミニサーバーに Rails アプリをセットアップしようとしています。現在、新しい iMac i7 (同じ OS) で問題なく動作しています。
次のコマンドで mongrel を起動します。
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 mini-server で同じ結果にアクセスすると、mongrel から次のエラー 500 テキストが表示されます。「申し訳ありませんが、問題が発生しました。」
まるでレールが機能していないかのようです。ログファイルのメッセージがいくつかある場合、私は物事を理解するのが得意ですが、 mongrel.log にはエラーメッセージがなく (出力は上記と同じままです)、log/production.log は空です (これにより、 Railsが起動していないと思いますか?)。
私の宝石はマシン間ですべて同じバージョンであり、アプリコードも同じです。Mac mini-server と iMac の rails.log が異なることを除いて、どの mongrel_debug ログにも手がかりはありません。
起動とシングル アクセスの後、最初に mac mini-server からの rails.log があります。
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の追加を除いて同じように見えますが、ここに私のiMacのrails.logがあります
# 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
どんな方向性やアイデアも大歓迎です。ありがとう。