Come eseguire Gollum utilizzando mod_rails e Apache in un ambiente di hosting condiviso (ad es. Dreamhost)?

Gollum è il nuovo motore wiki di GitHub scritto in Ruby. Distribuito localmente utilizza un'istanza Sinatra per fornire un'interface web.

È ansible eseguirlo in un ambiente di hosting condiviso come Dreamhost utilizzando Apache e mod_rails (Phusion Passenger)?

  • Parse / Modifica i file con Apache conf con Ruby?
  • Come faccio ad iniziare con lo Chef?
  • Come faccio a rimuovere pulito il ruby 1.8.7 da CentOS 5?
  • Cosa fa specificamente FastCGI (per Ruby, Java e Python)?
  • Come posso eseguire script Ruby tramite Apache (non necessariamente utilizzando Rails)?
  • Imansible installare il passeggero con Nginx
  • Ruby misteriosi processi sul server Rails
  • È ansible utilizzare script personalizzati per l'authentication con PAM?
  • 3 Solutions collect form web for “Come eseguire Gollum utilizzando mod_rails e Apache in un ambiente di hosting condiviso (ad es. Dreamhost)?”

    Crea il file "config.ru", aggiungi questo ad esso:

    require "gollum/frontend/app" Precious::App.set(:gollum_path, File.dirname(__FILE__)) Precious::App.set(:wiki_options, {}) run Precious::App 

    C'è un'ottima guida su:

    https://github.com/tecnh/gollum/wiki/Gollum-and-Passenger

    I punti principali sono:

    • aggiungere un config.ru a lib / gollum / frontend
    • Indicare la directory del documento in lib / gollum / frontend / public
    • Utilizzare la seguente config.ru come base, impostare il path wiki di conseguenza (ho dovuto aggiungere la parte di configuration bundler)
     #!/usr/bin/ruby require 'rubygems' require 'bundler/setup' require 'gollum/frontend/app' system("which git") or raise "Looks like I can't find the git CLI in your path.\nYour path is: #{ENV['PATH']}" gollum_path = '/path/to/wiki' # CHANGE THIS TO POINT TO YOUR OWN WIKI REPO disable :run configure :development, :staging, :production do set :raise_errors, true set :show_exceptions, true set :dump_errors, true set :clean_trace, true end $path = gollum_path Precious::App.set(:gollum_path, gollum_path) Precious::App.set(:wiki_options, {}) run Precious::App 

    La risposta di agosto Lilleaas è corretta, però ho dovuto usare una versione più vecchia di gollum, quindi ho impostato con Bundler:

    Gemfile :

     source 'http://rubygems.org' gem 'rdiscount' gem 'gollum', '1.3.0' 

    config.ru :

     require 'rubygems' require 'bundler' Bundler.require require "gollum/frontend/app" Precious::App.set(:gollum_path, File.expand_path(File.dirname(__FILE__))) Precious::App.set(:wiki_options, {}) run Precious::App 

    Ricordarsi inoltre di creare le directory public e tmp , come Passenger richiede.

    Tuttavia, ho incontrato un altro problema. Devi assicurarsi che il git sia nel path del server webserver. Per me questo non era il caso, e purtroppo non esiste un messaggio di errore, hai sempre finito sulla pagina per creare una nuova pagina.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.