The recommended method for installing a rails 2.3.x application is to use "bundler" to manage the gem files.  This will lead to a clean work environment that will not conflict with any other rails applications.  First start by reading the documentation about changes that you'll need to make to use bundler with Rails 2.3.x

An example of using bundler with PHP Shell:

$ mkdir rails23
$ cd rails23
$ bundle init
Writing new Gemfile to /infra/lamp/mounts/emc256/emc256test2/rails/rails23/Gemfile
$ editor Gemfile
$ cat Gemfile
# A sample Gemfile
source "http://rubygems.org"
gem "rails","2.3.11"
$ bundle install --path vendor
Fetching source index for http://rubygems.org/
Installing rake (0.9.2)
Installing activesupport (2.3.11)
Installing rack (1.1.2)
Installing actionpack (2.3.11)
Installing actionmailer (2.3.11)
Installing activerecord (2.3.11)
Installing activeresource (2.3.11)
Installing rails (2.3.11)
Using bundler (1.0.18)
[32mYour bundle is complete! It was installed into ./vendor[0m
$ bundle exec rails -v
Rails 2.3.11
$ bundle exec rails ../rails23
      exists
      create  app/controllers
      create  app/helpers
      create  app/models
      create  app/views/layouts
      create  config/environments
      create  config/initializers
      create  config/locales
      create  db
      create  doc
      create  lib
      create  lib/tasks
      create  log
      create  public/images
      create  public/javascripts
      create  public/stylesheets
      create  script/performance
      create  test/fixtures
      create  test/functional
      create  test/integration
      create  test/performance
      create  test/unit
      exists  vendor
      create  vendor/plugins
      create  tmp/sessions
      create  tmp/sockets
      create  tmp/cache
      create  tmp/pids
      create  Rakefile
      create  README
      create  app/controllers/application_controller.rb
      create  app/helpers/application_helper.rb
      create  config/database.yml
      create  config/routes.rb
      create  config/locales/en.yml
      create  db/seeds.rb
      create  config/initializers/backtrace_silencers.rb
      create  config/initializers/inflections.rb
      create  config/initializers/mime_types.rb
      create  config/initializers/new_rails_defaults.rb
      create  config/initializers/session_store.rb
      create  config/initializers/cookie_verification_secret.rb
      create  config/environment.rb
      create  config/boot.rb
      create  config/environments/production.rb
      create  config/environments/development.rb
      create  config/environments/test.rb
      create  script/about
      create  script/console
      create  script/dbconsole
      create  script/destroy
      create  script/generate
      create  script/runner
      create  script/server
      create  script/plugin
      create  script/performance/benchmarker
      create  script/performance/profiler
      create  test/test_helper.rb
      create  test/performance/browsing_test.rb
      create  public/404.html
      create  public/422.html
      create  public/500.html
      create  public/index.html
      create  public/favicon.ico
      create  public/robots.txt
      create  public/images/rails.png
      create  public/javascripts/prototype.js
      create  public/javascripts/effects.js
      create  public/javascripts/dragdrop.js
      create  public/javascripts/controls.js
      create  public/javascripts/application.js
      create  doc/README_FOR_APP
      create  log/server.log
      create  log/production.log
      create  log/development.log
      create  log/test.log
$ ls
Gemfile       README	app/	 db/   lib/  public/  test/  vendor/
Gemfile.lock  Rakefile	config/  doc/  log/  script/  tmp/
# modify per bundler directions
$ editor config/boot.rb
# create new file per bundler directions
$ editor config/preinitializer.rb

After you have modified your rails 2.3.x application to use bundler you'll need to create a symlink from your virtualhost root directory to your rails application.  The following is an example for the virtual host "test-vhostssl.hosting.cornell.edu" :

 $ pwd
/infra/lamp/mounts/emc256/emc256test2/htdocs/test-vhostssl.hosting.cornell.edu
# find relative path to rails application
$ ls ../../rails
rails23/  rails30/  rails31/
# create symlink to "public" directory
$ ln -s ../../rails/rails23/public rails23
cd rails23
# create .htaccess file for passenger
$ cat .htaccess
RackBaseURI /rails23
PassengerAppRoot /infra/lamp/mounts/emc256/emc256test2/rails/rails23/

  • No labels