<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>asmcos</title>
    <link>https://ruby-china.org/asmcos</link>
    <description/>
    <language>en-us</language>
    <item>
      <title>rails + apache + fcgi</title>
      <description>&lt;p&gt;我使用的是 VPS(ubuntu 12.04),上面有 php，python。
为了将 rails 项目部署到服务器上，我选择了 fcgi。&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;安装软件如下：&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo aptitude install libapache2-mod-fcgid libfcgi-ruby1.9.1
&lt;/code&gt;&lt;/pre&gt;
&lt;ol&gt;
&lt;li&gt;enable  apache 的 rewrite&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;a2enmod rewrite
&lt;/code&gt;&lt;/pre&gt;
&lt;ol&gt;
&lt;li&gt;apache config&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;vim /etc/apache2/sites-enabled/codepark.conf&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;VirtualHost *:80&amp;gt;
   DefaultInitEnv RAILS_ENV development
   DocumentRoot /home/xxxxx/public
   ServerName www.codepark.us
   &amp;lt;Directory /&amp;gt;
   AllowOverride All
   Options ExecCGI FollowSymLinks
   AllowOverride all
   Order allow,deny
   Allow from all
   &amp;lt;/Directory&amp;gt;
&amp;lt;/VirtualHost&amp;gt;


&lt;/code&gt;&lt;/pre&gt;
&lt;ol&gt;
&lt;li&gt; public 目录
.htaccess&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SetEnv RAILS_RELATIVE_URL_ROOT /xxxxx

RewriteEngine On


RewriteRule ^(.*)$ xxxxxx_cgi.fcgi [E=X-HTTP_AUTHORIZATION:%{HTTP:Authorization},QSA,L]

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;xxxxxx_cgi.fcgi&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="c1"&gt;#!/usr/bin/ruby&lt;/span&gt;

&lt;span class="nb"&gt;require_relative&lt;/span&gt; &lt;span class="s1"&gt;'../config/environment'&lt;/span&gt;

&lt;span class="k"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;Rack::PathInfoRewriter&lt;/span&gt;
  &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;initialize&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="vi"&gt;@app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;

  &lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;call&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;env&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;delete&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'SCRIPT_NAME'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;parts&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;env&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'REQUEST_URI'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;split&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'?'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;env&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'PATH_INFO'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;parts&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="n"&gt;env&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'QUERY_STRING'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;parts&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;to_s&lt;/span&gt;
    &lt;span class="vi"&gt;@app.call&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;env&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;

&lt;span class="no"&gt;Rack&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;Handler&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;FastCGI&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;run&lt;/span&gt;  &lt;span class="no"&gt;Rack&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;PathInfoRewriter&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;new&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="no"&gt;Xxxxx&lt;/span&gt;&lt;span class="o"&gt;::&lt;/span&gt;&lt;span class="no"&gt;Application&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;


&lt;/code&gt;&lt;/pre&gt;</description>
      <author>asmcos</author>
      <pubDate>Tue, 26 Mar 2013 15:13:47 +0800</pubDate>
      <link>https://ruby-china.org/topics/9762</link>
      <guid>https://ruby-china.org/topics/9762</guid>
    </item>
    <item>
      <title>route.rb 设置的 url 问题</title>
      <description>&lt;p&gt;route.rb 配置 &lt;/p&gt;

&lt;p&gt;get "/members/:name/edit" =&amp;gt; "users#edit"&lt;/p&gt;

&lt;p&gt;views 里面 改如何写？
下面下法总报错。&lt;/p&gt;

&lt;p&gt;&amp;lt;%= link_to "edit profile", edit_member_path(&lt;a href="/user.name" class="user-mention" title="@user.name"&gt;&lt;i&gt;@&lt;/i&gt;user.name&lt;/a&gt;) %&amp;gt;&lt;/p&gt;</description>
      <author>asmcos</author>
      <pubDate>Tue, 19 Feb 2013 15:47:18 +0800</pubDate>
      <link>https://ruby-china.org/topics/8769</link>
      <guid>https://ruby-china.org/topics/8769</guid>
    </item>
    <item>
      <title>rails console 对数据库的操作</title>
      <description>&lt;p&gt;如何更改已有的数据库记录？
例如表名字 User
User.new() 创建一个新的
User.all 列出所有的&lt;/p&gt;

&lt;p&gt;如何更改 id=6 的某个字段？&lt;/p&gt;</description>
      <author>asmcos</author>
      <pubDate>Mon, 18 Feb 2013 13:18:28 +0800</pubDate>
      <link>https://ruby-china.org/topics/8737</link>
      <guid>https://ruby-china.org/topics/8737</guid>
    </item>
  </channel>
</rss>
