在Nginx上執行Ruby on Rails

2021-05-26 14:47:23 字數 3550 閱讀 8511

安裝ruby

export path="$:/var/lib/gems/1.8/bin/"

echo 'export path="$:/var/lib/gems/1.8/bin/"' >> /etc/bash.bashrc  

aptitude install ruby rubygems vim-ruby rub y-dev libzlib-ruby   

libyaml-ruby libreadline-ruby libncurses-ruby rdoc ri libcurses-ruby   

libruby libruby-extras libfcgi-ruby build-essential libopenssl-ruby   

libdbm-ruby libdbi-ruby libxml-ruby libxml2-dev 

安裝rails

gem install -v=2.3.5 rails 

gem install rails也應該可以工作,但2.3.6-2.3.8(目前正在編寫)存在問題。如果你想嘗試最新版本,則可以使用:

gem install rails –pre 

或使用rvm,rvm是乙個命令列工具,允許我們更容易安裝,管理和使用多個ruby環境。

應用程式

cd /var/www  

thin伺服器

thin將成為ruby伺服器:

gem install thin  

thin install  

/usr/sbin/update-rc.d -f thin defaults(fedora下是chkconfig thin on)  

如果你不喜歡thin,還有mongrels:

aptitude install mongrel mongrel-cluster  

-a 127.0.0.1 # or: -e production for caching, etc

mkdir /etc/mongrel_cluster  

安裝nginx

nginx將作為web伺服器,**傳送給thin的ruby請求,執行在埠3000-3002上,使用下面的命令進行安裝:

aptitude install nginx 

server 127.0.0.1:3000;  

server 127.0.0.1:3001;  

server 127.0.0.1:3002;  

}  server   

location @ruby   

}

資料庫

首先安裝sqlite:

aptitude install -y libdbd-sqlite3-ruby sqlite3 libsqlite3-dev libsqlite3-ruby  

gem install sqlite3-ruby 

mysql

如果你想使用mysql,則使用下面的命令進行安裝:

aptitude install -y libmysqlclient-dev  

gem install mysql 

development:  

adapter: mysql  

host: localhost  

password: ******x 

注意,database.yml不支援tab鍵,如果你使用的是vim,可能需要做如下設定:

:set expandtab  

#:set tabstop=4 # how many spaces should tabs be replaced withs

:retab

然後將下面的內容新增到./gemfile,讓你的應用程式使用mysql:

gem 'mysql', '2.8.1'

假設你已經有乙個mysql伺服器在執行,如果沒有,你需要先執行aptitude install mysql-server安裝它。

gem安裝配置

gem install uuidtool  

gem install ruby-debug  

gem install ruby-graphviz  

gem install json  

gem install activemerchant 

啟動應用程式

讓我們重啟我們的守護程式,看看它是否能正常工作。

對於thin:

/etc/init.d/thin restart && /etc/init.d/nginx reload; tail -f log/*.log 

對於mongrel

mongrel_cluster_ctl restart && /etc/init.d/nginx reload; tail -f log/*.log 

在config/routs.rb中新增:

map.root :controller => "home"

建立乙個home控制器,移除『welcome aboard』html:

script/generate controller home index  

rm public/index.html  

echo '<

h1>heyo!h1

>

<

object

width="640"

height="385"

>

<

param

name="movie"

value=""

>

param

>

<

param

name="allowfullscreen"

value="true"

>

param

>

<

param

name="allowscriptaccess"

value="always"

>

param

>

<

embed

src=""

allowscriptaccess="always"

allowfullscreen="true"

width="640"

height="385"

>

embed

>

object

如果一切順利,在瀏覽器中輸入你建立的vhost位址,你將會看到預期的內容,到此,我們就成功地在ubuntu上的nginx安裝配置並執行起了ruby on rails環境。

在Imac上安裝nginx

以下是在mac os x 10.9.2 安裝nginx步驟 1 download latest pcre.2 安裝 cd downloads tar xvzf pcre 8.5 cd pcre 8.5 sudo configure prefix usr local sudo make sudo ma...

在linux上安裝nginx

2 為了不與安裝包混淆,再建乙個同級的nginx包,在 jboss nginx install nginx 1.6.2目錄下 即nginx的解壓檔案包 執行如下命令 configure prefix jboss nginx with pcre jboss nginx install pcre 8.3...

在Mac上安裝nginx

首先,你得安裝好homebrew.然後在命令列終端執行 brew install nginx 通過homebrew,nginx預設被安裝在 usr local cellar nginx 1.6.2,conf檔案預設被安裝在 usr local etc nginx nginx.conf 然後再瀏覽器中...