一直聽說rubyonrails的開發效率很高,所以前陣子嘗試了的環境搭建過程。我用的是ubuntu14.04LTS,看了下網上的各種帖子以及一些教程,貌似都不建議在。 rails開發,一般都是linux 。 前期工作前期工作前期工作
rails環境前,有一些必要的包需要安裝,以免後面的安裝遇到各種缺少庫的問題(參見http://ihower.tw/rails3/
$sudo apt-get install build-essential bison openssl libreadline6libreadline6-dev curl build-essential bison openssl libreadline6libreadline6-dev curl build-essential bison openssl libreadline6libreadline6-dev curl build-essential git-13 libsqlite3-dev sqlite3 libxml2-devlibxslt-dev autoconf libc6-dev
unableto locate的問題,一般可以用更新來解決:$sudo 若
update 也無法執行,出現」
isthe internet authenticated?”之類的提示,則很可能是網絡有限制。我在用旅館的網絡時就發現了這個問題。。。 RVM安裝
ruby環境的管理和切換,這可以給你學習
rvm進行管理,但我個人比較傾向於使用 安裝rvm需要用到curlcurl 官網指示安裝,很簡單,執行兩個指令即可:$ gpg --keyserver hkp://keys.gnupg.net--recv-keys D39DC0E3 https /get.rvm.io | bash -sstable
安裝完成後,運行:$source ~/.rvm/scripts/rvm這樣便算完成了rvm的安裝。可透過運行$ rvm-v來檢查rvm
是否安裝成功。
用rvm 運行$rvm install 2.0.0來安裝版本這個可依自己的需求安裝對應的版本。若出現Errorrunning
‘requirements_debian…’的錯誤,可先運行$rvm autolibs disable然後再安裝。若如步驟1中已把各種包都安裝了則這裡應該能成功安裝,否則將會出現missingxxxmissingxxx missingxxx Ruby版本的設定 ruby,所以若同一桌上型電腦上安裝的多個版本的ruby,則需要指定使用哪個版本的rubyrubyruby ruby。可用$rvm
2.0.0 --default指令來指定預設的版本(這裡是2.0.0版)。 注意,對於ubuntu其 gnome-terminal,所以會出現 RVMis
not a function的錯誤,需開啟terminal的Edit->profile-Tandence
Command,選取Runcommand as a loginshell。關閉terminal再重新開啟一個terminal https://rvm.io/integration/gnome-terminal 🜎ra🎟🜎鑑於國內的網路環境,在安裝rails前,可將RVM的鏡像伺服器http://ruby .taobao.org/,否則會長時間沒有回應而無法安裝:$ $gemsources -a https://ruby.taobao.org/ s -l ***CURRENT SOURCES *** https://ruby.taobao.orghttps://ruby.taobao.org 設定相應的ruby/rails 的 gemset。如我們想用 2.0.0版本的ruby18和ruby1. rails進行組合,則可為其設定一個gemset環境。具體操作如下:$rvm use 2.0.0
(使用2.0.0版本的ruby版本的 $rvm gemset create rails418
(創建名為rails418的gemset的 $gem install rails [--version=' 4.1.8'] (安裝rails,後面的version,後面的version rails。
convert “/x89” from ASCII to UTF8之類的錯誤,可運行$gem install rdoc和
rdoc --all --overwrite來解決)$rvm use 2.0.0@rails418 –default🜎 和 組合的gemset 可以用$rvm gemset list來查看自己設了哪些gemset環境,同樣的, 可查看安裝了哪些版本的ruby。 我們可能會問,如果我有多個rails項目,每個項目需要不同的環境,那麼每次切換項目gemset環境?事實上,我們可以在各專案的根目錄建個.rvmrc 文件,在其中寫入例如rvmuse
2.0.0@rails418的指令來指定所使用的gemset環境。這樣,當我們每次進入這個目錄是就會切換為此環境。 Rails的部署 的部署方式。 passenger webapp
server, 是一個高效能的HTTP可用於部署的軟體其實有若干,大家可以自行選擇。 先安裝passenger
install passenger之後使用rvmsudo指令帶 nginx: $ rvmsudopassenger-install-nginx-module這樣nginx ,修改 /opt/ nginx/conf/nginx.conf檔案來指定根目錄為rails程式。之後啟動 $ sudo /opt/nginx/sbin/nginx 開發的項目了。 使用這種方法安裝帶passenger的nginx的ngin Nginx不像apache,而nginx則只能配置好需要的模組後再進行編譯安裝,一旦安裝完成將無法再新增模組。所以要自己分開安裝的,需要上網查對於分開安裝如何設定nginx使其能支援passenger,這裡給定passenger https://www.phusionpassenger.com/documentation/UsersguideNginx.html至於如何將nginxnginx www.nginx.cn/204.html上的一段腳本:#!/bin/sh
DESC="nginxdaemon"
NAME=nginxDAEMON=/opt/nginx/sbin/$NAMECONFIGFILE=/opt/op logs/$NAME.pidSCRIPTNAME=/etc/init.d/$NAME set-e
[-x "$DAEMON" ] || exit 0
do_start(){
$DAEMON -c $CONFIGFILE || echo-n "nginx already running"
} do_stop(){
kill -INT `cat $PIDFILE` ||echo -n "nginx not running"
} do_reload(){
kill -HUP `cat $PIDFILE` ||echo -n "nginx can't reload"
} case"$1" in
start)
echo -n "Starting $DESC:$NAME"
do_start
echo "."
;;
stop)
echo -n "Stopping $DESC:$NAME"
do_stop
echo "."
;;
reload|graceful)
echo -n "Reloading $DESCconfiguration..."
do_reload
echo "."
;;
restart)
echo -n "Restarting$DESC: $NAME"
do_stop
do_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME{start|stop|reload|restart}" >&2
exit 3
;;
esac exit0 將這段腳本以新建文件 將這段腳本以新建文件 sudoservice
nginx start/stop/restart 來操作 nginx 服務了。 下面給出如何用rvm, gemset的指令: 卸載一個ruby 版本:$rvm
remove 2.0.0清空一個gemset的所用 gem $rvm gemset empty 2.0.0@rails418刪除一個gemset
gemset delete rails418
以上就介紹了Ubuntu14.04下Ruby on rails,Passenger與Nginx的環境搭建,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。
的錯誤。