我最近使用Ubuntu 12.04 LTS创建了一个Linode服务器
作为管理员用户aurelien我安装了rbenv(在我的情况下为我的旧版rails 3.2应用程序的1.9.3-p194)。
之后我运行了gem install passenger
并被放置在目录~/.rbenv/shims
之后我跑了rbenv rehash
并安装nginx:
我无法运行passenger-install-nginx-module
,因为它要求与sudo
一起使用。当我尝试sudo passenger-install-nginx-module
时,它告诉我command not found
。
然后我发现了这篇文章PhilT's answer
并尝试运行sudo bash -c "source ~/.bashrc && passenger-install-nginx-module"
/home/aurelien/.rbenv/shims/passenger-install-nginx-module
我查看了整个passenger / nginx安装,并在询问前缀目录时按“enter”。
在我的根目录cd ~/home/aurelien
中,我找不到/opt/nginx
。
是否正确创建了这些目录?
我在root上的唯一目录/文件是:
. .. apps .bash_history .bash_logout .bashrc .cache .gem .gitconfig .profile .rbenv .ssh .viminfo
编辑:我的.bashrc文件
export RBENV_ROOT="${HOME}/.rbenv"
if [ -d "${RBENV_ROOT}" ]; then
export PATH="${RBENV_ROOT}/bin:${PATH}"
eval "$(rbenv init -)"
fi
# If not running interactively, don't do anything
[ -z "$PS1" ] && return
答案 0 :(得分:1)
answer posted before by PhilT拥有与乘客一起安装nginx的正确代码:
宝石安装乘客 rbenv rehash sudo bash -c“source~ / .bashrc&& passenger-install-nginx-module”
上面的解释中的错误是/ opt / nginx不在用户的主目录(〜/ home / aurelien / opt / nginx)中,而是在根目录(简称/ opt / nginx。)中,因为nginx是系统范围的安装。
(注意:在其他一些系统中,nginx也有配置文件放在/ etc / nginx中)