<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>tonyc620 (tony)</title>
    <link>https://ruby-china.org/tonyc620</link>
    <description/>
    <language>en-us</language>
    <item>
      <title>基于 vagrant 的 ubuntu14.04 安装 passenger 与 nginx 报错</title>
      <description>&lt;p&gt;RT，我用 vagrant 在本地起了一个基于 Ubuntu14.04 的虚拟机，然后按照&lt;a href="https://github.com/ruby-china/ruby-china/wiki/Ubuntu-14.04-%E4%B8%8A%E4%BD%BF%E7%94%A8-Nginx-Passenger-%E9%83%A8%E7%BD%B2-Ruby-on-Rails" rel="nofollow" target="_blank" title=""&gt;《Ubuntu 14.04 上使用 Nginx Passenger 部署 Ruby on Rails》&lt;/a&gt;里面的教程一步步的安装，不过 ruby 装得是&lt;code&gt;2.1.4&lt;/code&gt;的版本，然后就卡在了 &lt;strong&gt;安装 Passenger&lt;/strong&gt; 的&lt;code&gt;sudo apt-get install nginx-extras passenger&lt;/code&gt;这一步，每次都是提示：&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or &lt;span class="k"&gt;if &lt;/span&gt;you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may &lt;span class="nb"&gt;help &lt;/span&gt;to resolve the situation:

The following packages have unmet dependencies:
 nginx-extras : Depends: perlapi-5.18.2 but it is not installable
                Depends: libperl5.18 &lt;span class="o"&gt;(&amp;gt;=&lt;/span&gt; 5.18.2&lt;span class="o"&gt;)&lt;/span&gt; but it is not installable
                Recommends: passenger &lt;span class="o"&gt;(&lt;/span&gt;&amp;lt; 4.0.54&lt;span class="o"&gt;)&lt;/span&gt; but 1:4.0.53-1~trusty1 is to be installed
E: Unable to correct problems, you have held broken packages.
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;我刚接触 Ruby&amp;amp;Rails，根据这个错误信息个人推测是缺少了某些依赖，不过不知道需要怎么处理才行，请各位帮忙看看，谢谢！&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;另外，我在网上看了一些其它的教程，发现有不少都是先通过 gem 安装 passenger，然后再通过&lt;code&gt;passenger-install-nginx-module&lt;/code&gt;来安装一个特殊版本的 nginx 用于和 passenger 一起部署 rails，我也尝试了这个方法，首先用&lt;code&gt;apt-get remove&lt;/code&gt;卸载了之前安装的 nginx，然后通过&lt;code&gt;passenger-install-nginx-module&lt;/code&gt;顺利安装，但是在启动 Nginx 的时候就遇到了另外一个问题：&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;#passenger及nginx配置信息&lt;/span&gt;

&lt;span class="c"&gt;# Passenger的根目录&lt;/span&gt;
&lt;span class="c"&gt;# passeger-config --root &amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;
/home/vagrant/.rvm/gems/ruby-2.1.4/gems/passenger-4.0.53

&lt;span class="c"&gt;# nginx安装目录  /opt/nginx/&lt;/span&gt;
&lt;span class="c"&gt;# vim /opt/nginx/conf/nginx.conf &amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;
http &lt;span class="o"&gt;{&lt;/span&gt;
    passenger_root /home/vagrant/.rvm/gems/ruby-2.1.4/gems/passenger-4.0.53&lt;span class="p"&gt;;&lt;/span&gt;
    passenger_ruby /home/vagrant/.rvm/gems/ruby-2.1.4/wrappers/ruby&lt;span class="p"&gt;;&lt;/span&gt;
    ...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;报错提示：&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;nginx: &lt;span class="o"&gt;[&lt;/span&gt;emerg] unknown directive &lt;span class="s2"&gt;"passenger_root"&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; /etc/nginx/nginx.conf:18
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;请问，这个问题又改如何破呢？&lt;/p&gt;

&lt;p&gt;&lt;a href="/happypeter" class="user-mention" title="@happypeter"&gt;&lt;i&gt;@&lt;/i&gt;happypeter&lt;/a&gt;  请问能否指导一下，谢谢！&lt;/p&gt;</description>
      <author>tonyc620</author>
      <pubDate>Tue, 02 Dec 2014 11:29:16 +0800</pubDate>
      <link>https://ruby-china.org/topics/22968</link>
      <guid>https://ruby-china.org/topics/22968</guid>
    </item>
  </channel>
</rss>
