문제

DreamHost에 Small Rails 3 앱을 배포하고 싶습니다 (테스트 목적으로 만 심각한 것은 없습니다). 누군가 이미 해냈는지 궁금합니다 ... 다음 중 하나를 선택하십시오.

  1. 나는 그것을했고 그것은 매우 쉽다. 여기에 : ... ...
  2. 나는 그것을 시도하지 않았지만 쉬워야합니다. 여기에 다음과 같은 방법이 있습니다.
  3. 그것은 꽤 복잡하지만, 이것은 당신이 시작해야합니다 : ....
  4. No Wai !!! 1! One! 1 Slicehost 또는 다른 비 공유 호스팅에 설정하거나 DH에서 강제로 강제하려는 고통스러운 죽음으로 죽을 것입니다.

생각?

도움이 되었습니까?

해결책

불행히도, 나는 그것이 당신을 위해 보석을 설치하고 공유 환경을 통해 보석을 설치하는 데 크게 의존한다고 생각합니다. Rails 3을 공유 서버에 배포 할 계획이든시기에 대한 자세한 내용은 지원 부서에 문의 할 수 있습니다.

반면에, 당신 ~할 수 있었다 네 번째 옵션이 암시하고 그냥 계속해서 어딘가에 슬라이스를 얻으십시오 (반드시 Slicehost와 함께 필요하지는 않지만 Heroku와 함께 저렴하게 배치 할 수 있음)는 자신의 보석을 배치 할 수 있습니다.

도움이 되었기를 바랍니다!

다른 팁

이를 수행 할 수 있지만 고급 SysADM 기술이 필요합니다.

Dreamhost에서 Rails 3을 사용하려면 다음을 수행해야합니다.

  • 루비 1.8.7을 설치하십시오
  • Rubygems를 설치하십시오
  • 레일 설치 3

다른 곳에 모든 것을 설치할 권한이 없기 때문에 자신의 홈 디렉토리에 있습니다.

또한 이는 기존 DreamHost 승객 구성과 함께 작동하지 않습니다.

방금 DreamHost로부터 이메일을 받았습니다. 나는 Rails 3.0에 관해 약 2 개월 전에 그들에게 이메일을 보냈다. 그들은 우리가 말하는대로 서버에 그것을 밀기 시작했다. 문제가 해결되었다고 가정하면 레일 3은 한 달 안에 지원되어야합니다.

내가 공간을 할당 한 Dreamhost 기계, 물고기 자리는 어제 Rails 3.0.3으로 업그레이드 된 것으로 보입니다. 나는 Redmine 인스턴스가 끔찍하게 고장 났기 때문에 알았다 :(

오늘부터 여기 내 Dreamhost Machine은 다음과 같습니다.

    $ rails -v
    Rails 3.0.3

    $ ruby -v
    ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]

    $ gem list

    *** LOCAL GEMS ***

    abstract (1.0.0)
    actionmailer (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    actionpack (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    actionwebservice (1.2.6, 1.2.3)
    activemodel (3.0.3)
    activerecord (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    activeresource (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    activesupport (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    acts_as_taggable (2.0.2, 1.0.4)
    ajax_scaffold_generator (3.1.11, 2.2.1)
    archive-tar-minitar (0.5.2, 0.5.1)
    arel (2.0.4)
    auth_generator (2.0.1, 1.5.3)
    Bloglines4R (0.1.0)
    BlueCloth (1.0.0)
    builder (2.1.2, 2.0.0)
    bundler (1.0.7)
    camping (1.5.180, 1.5)
    capistrano (2.5.1, 2.1.0, 1.4.1)
    classifier (1.3.1)
    cmdparse (2.0.2, 2.0.0)
    curb (0.1.4)
    daemons (1.0.10, 1.0.9)
    dbd-mysql (0.4.3)
    dbi (0.4.3)
    deprecated (2.0.1)
    erubis (2.6.6)
    eventmachine (0.12.10, 0.12.8)
    facets (2.2.1, 1.8.54)
    fastthread (1.0.7, 1.0.1)
    feedtools (0.2.29, 0.2.28)
    ferret (0.11.6, 0.11.4)
    flickr (1.0.2)
    gd2 (1.1.1, 1.1)
    gen (0.41.0)
    geoip (0.6.1)
    gettext (1.90.0)
    glue (0.41.0)
    gnuplot (2.2)
    gravtastic (2.0.0)
    gruff (0.3.1)
    haml (2.0.3)
    hoe (1.5.1)
    hpricot (0.6)
    htmltools (1.10)
    i18n (0.4.2, 0.4.1)
    localization_generator (1.0.8)
    login_generator (1.2.2)
    madeleine (0.7.3)
    mail (2.2.15)
    markaby (0.5)
    mechanize (0.7.6)
    metaid (1.0)
    mime-types (1.16)
    mini_magick (1.2.3)
    mysql (2.7)
    needle (1.3.0)
    net-sftp (1.1.1)
    net-ssh (2.0.23, 1.1.2)
    nitro (0.41.0)
    nokogiri (1.4.4)
    og (0.41.0)
    oniguruma (1.1.0)
    packet (0.1.14)
    PageTemplate (2.2.0)
    ParseTree (2.1.1)
    payment (1.0.1)
    pdf-writer (1.1.8)
    podcast (0.0.4)
    polyglot (0.3.1)
    rack (1.2.1, 1.1.0, 1.0.1, 1.0.0)
    rack-mount (0.6.13)
    rack-test (0.5.6)
    radiant (0.6.9)
    rails (3.0.3, 2.3.8, 2.3.5, 2.3.4, 2.3.3, 2.2.2, 2.1.2, 2.1.1, 2.1.0, 2.0.5, 2.0.2)
    railties (3.0.3)
    rake (0.8.7, 0.8.3, 0.8.2)
    RedCloth (3.0.4)
    rfacebook (0.9.8)
    rmagick (1.15.14)
    rspec (1.1.3)
    ruby-breakpoint (0.5.1)
    ruby-debug (0.10.0)
    ruby-openid (2.1.7)
    ruby-yadis (0.3.4)
    ruby_odeum (0.4.1)
    rubyforge (0.4.5)
    RubyInline (3.6.7)
    rubypants (0.2.0)
    rubyzip (0.9.1)
    ruport (1.6.0)
    ruport-util (0.14.0)
    ruwiki (0.9.3)
    salted_login_generator (2.0.2)
    shipping (1.5.1)
    SimpleSearch (0.5.0)
    sqlite3-ruby (1.2.1)
    stemmer (1.0.1)
    switchtower (1.0.1)
    syntax (1.0.0)
    tagtools (0.0.3)
    thor (0.14.6, 0.14.4)
    tidy (1.1.2)
    treetop (1.4.9)
    tzinfo (0.3.23)
    unicode (0.1)
    uuidtools (1.0.3)
    webgen (0.4.7)
    wee (0.10.0)
    xhtmldiff (1.0.0)
    xml-simple (1.0.11)
    ym4r (0.6.1)
    youtube-g (0.4.9.9)

승객 문서에서 : http://www.modrails.com/documentation/users%20guide%20apache.html#bundler_support

파일을 만듭니다 config/setup_load_paths.rb 앱 에서이 줄을 추가하십시오.

$: << "<path-where-bundler-gem-was-installed>/lib"

이 명령을 통해 공급 업체/번들 경로에서 번들러 보석을 풀었습니다.

gem unpack bundler --target=vendor/bundle

그리고 다른 보석은 다음과 같습니다.

bundle install --deployment

이것은 Dreamhost 및 승객과 함께 작동해야합니다.> = 2.2.14

RVM 및 FastCGI를 사용 하여이 작업을 수행 할 수있었습니다.

내 .htaccess 파일은 다음과 같습니다.

<IfModule mod_fastcgi.c>
AddHandler fastcgi-script .fcgi
</IfModule>
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
</IfModule>

Options +FollowSymLinks +ExecCGI 

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ dispatch.fcgi/$1 [QSA,L] 

ErrorDocument 500 "Rails application failed to start properly for your rails app"

그리고 내 Dispatch.fcgi는 모양을 보였습니다 (메모를 작성해야합니다) :

#!/usr/bin/env /home/<MY_HOME_DIR>/.rvm/bin/ruby-1.9.3-p0@awesome

require 'rubygems'
require 'fcgi'

ENV['RAILS_ENV'] ||= 'production' 
#ENV['RAILS_ENV'] = 'development'


# Set GEM_PATH and GEM_HOME ("user" is your dreamhost user)
ENV['GEM_HOME'] ||= '/home/<MY_HOMEDIR>/.rvm/gems/ruby-1.9.3-p0@awesome'
ENV['GEM_PATH'] ||= '/home/<MY_HOMEDIR>/.rvm/gems/ruby-1.9.3-p0@awesome:/home/<MY_HOMEDIR>/.rvm/gems/ruby-1.9.3-p0@global'
require 'rubygems'
Gem.clear_paths

require File.join(File.dirname(__FILE__), '../config/environment')

class Rack::PathInfoRewriter
 def initialize(app)
   @app = app
 end

 def call(env)
   env.delete('SCRIPT_NAME')
   parts = env['REQUEST_URI'].split('?')
   env['PATH_INFO'] = parts[0]
   env['QUERY_STRING'] = parts[1].to_s
   @app.call(env)
 end
end

Rack::Handler::FastCGI.run  Rack::PathInfoRewriter.new(Imjustsayin::Application)
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top