<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>dizhu (地主)</title>
    <link>https://ruby-china.org/dizhu</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>疑惑 Rewrite 和 Redirect 的区别</title>
      <description>&lt;p&gt;有一个需求是这样的：
1、访问 www.a.com 的时候跳转到 www.b.com 中去;
2、能够定制 header 中的 referer，也就是从 www.a.com 跳转到 www.b.com，在 www.b.com 中识别到的 referer 就是我们定制的 referer&lt;/p&gt;

&lt;p&gt;配置一&lt;/p&gt;
&lt;pre class="highlight conf"&gt;&lt;code&gt;&lt;span class="n"&gt;server&lt;/span&gt;
     {
             &lt;span class="n"&gt;listen&lt;/span&gt;       &lt;span class="m"&gt;80&lt;/span&gt;;
             &lt;span class="n"&gt;server_name&lt;/span&gt; &lt;span class="n"&gt;www&lt;/span&gt;.&lt;span class="n"&gt;a&lt;/span&gt;.&lt;span class="n"&gt;com&lt;/span&gt;;
             &lt;span class="n"&gt;location&lt;/span&gt; / {
                 &lt;span class="n"&gt;proxy_set_header&lt;/span&gt; &lt;span class="n"&gt;referer&lt;/span&gt; &lt;span class="s1"&gt;'my referer'&lt;/span&gt;;
                 &lt;span class="n"&gt;proxy_pass&lt;/span&gt; &lt;span class="n"&gt;http&lt;/span&gt;://&lt;span class="n"&gt;www&lt;/span&gt;.&lt;span class="n"&gt;b&lt;/span&gt;.&lt;span class="n"&gt;com&lt;/span&gt;;
                 &lt;span class="n"&gt;proxy_redirect&lt;/span&gt; &lt;span class="n"&gt;http&lt;/span&gt;://&lt;span class="n"&gt;www&lt;/span&gt;.&lt;span class="n"&gt;a&lt;/span&gt;.&lt;span class="n"&gt;com&lt;/span&gt;/ &lt;span class="n"&gt;http&lt;/span&gt;://&lt;span class="n"&gt;www&lt;/span&gt;.&lt;span class="n"&gt;b&lt;/span&gt;.&lt;span class="n"&gt;com&lt;/span&gt;/;
                 &lt;span class="c"&gt;#rewrite ^/ http://www.b.com;
&lt;/span&gt;             }
     }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;上面这个配置，虽然可以成功定制修改 referer 的值，但是浏览器地址栏还是 www.a.com，URL 没有成 www.b.com 的;&lt;/p&gt;

&lt;p&gt;然后修改成下面这个配置：
配置二&lt;/p&gt;
&lt;pre class="highlight conf"&gt;&lt;code&gt;&lt;span class="n"&gt;server&lt;/span&gt;
     {
             &lt;span class="n"&gt;listen&lt;/span&gt;       &lt;span class="m"&gt;80&lt;/span&gt;;
             &lt;span class="n"&gt;server_name&lt;/span&gt; &lt;span class="n"&gt;www&lt;/span&gt;.&lt;span class="n"&gt;a&lt;/span&gt;.&lt;span class="n"&gt;com&lt;/span&gt;;
             &lt;span class="n"&gt;location&lt;/span&gt; / {
                 &lt;span class="n"&gt;proxy_set_header&lt;/span&gt; &lt;span class="n"&gt;referer&lt;/span&gt; &lt;span class="s1"&gt;'my referer'&lt;/span&gt;;
                 &lt;span class="c"&gt;#proxy_pass http://www.b.com;
&lt;/span&gt;                 &lt;span class="c"&gt;#proxy_redirect http://www.a.com/ http://www.b.com/;
&lt;/span&gt;                 &lt;span class="n"&gt;rewrite&lt;/span&gt; ^/ &lt;span class="n"&gt;http&lt;/span&gt;://&lt;span class="n"&gt;www&lt;/span&gt;.&lt;span class="n"&gt;b&lt;/span&gt;.&lt;span class="n"&gt;com&lt;/span&gt;;
             }
     }

&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;这个可以实现跳转，浏览器地址栏成功变成：www.b.com，但是 referer 的值没有变成 my referer&lt;/p&gt;

&lt;p&gt;在 Nginx 中怎样配置，才能实现既能跳转又能修改 referer 呢？&lt;/p&gt;</description>
      <author>dizhu</author>
      <pubDate>Mon, 03 Nov 2014 09:50:12 +0800</pubDate>
      <link>https://ruby-china.org/topics/22421</link>
      <guid>https://ruby-china.org/topics/22421</guid>
    </item>
    <item>
      <title>gem install mime-types</title>
      <description>&lt;p&gt;安装 mime-types gem 的时候报错，提示是阿里云的服务器连接错误&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;Fetching &lt;span class="nb"&gt;source &lt;/span&gt;index from https://ruby.taobao.org/
Resolving dependencies...
Network error &lt;span class="k"&gt;while &lt;/span&gt;fetching https://rubygems-china.oss.aliyuncs.com/quick/Marshal.4.8/sprockets-2.8.1.gemspec.rz
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;a href="/huacnlee" class="user-mention" title="@huacnlee"&gt;&lt;i&gt;@&lt;/i&gt;huacnlee&lt;/a&gt; 可否帮忙看看？&lt;/p&gt;</description>
      <author>dizhu</author>
      <pubDate>Thu, 21 Aug 2014 15:13:41 +0800</pubDate>
      <link>https://ruby-china.org/topics/21158</link>
      <guid>https://ruby-china.org/topics/21158</guid>
    </item>
    <item>
      <title>移动前端框架大家选择哪个？</title>
      <description>&lt;p&gt;了解下这两个：
一个是百度的：&lt;a href="http://gmu.baidu.com/" rel="nofollow" target="_blank"&gt;http://gmu.baidu.com/&lt;/a&gt;
一个是推特的：&lt;a href="http://goratchet.com/" rel="nofollow" target="_blank"&gt;http://goratchet.com/&lt;/a&gt;
百度的这个就是太重了，光 js 和 css 加起来就有几十个；
推特的这个很清爽，也很轻，但是功能貌似太简单了点；&lt;/p&gt;

&lt;p&gt;想了解大家都各自用什么移动框架？&lt;/p&gt;

&lt;p&gt;btw：很好奇 fengche.co 和 chanyouji.com 用的什么移动框架？&lt;/p&gt;</description>
      <author>dizhu</author>
      <pubDate>Mon, 17 Mar 2014 21:26:45 +0800</pubDate>
      <link>https://ruby-china.org/topics/17956</link>
      <guid>https://ruby-china.org/topics/17956</guid>
    </item>
    <item>
      <title>rails 的 json.jbuilder 渲染很慢，如何优化？</title>
      <description>&lt;p&gt;下面是从日志摘出来的：&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;Rendered api/list.json.jbuilder &lt;span class="o"&gt;(&lt;/span&gt;115.6ms&lt;span class="o"&gt;)&lt;/span&gt;
Completed 200 OK &lt;span class="k"&gt;in &lt;/span&gt;408ms &lt;span class="o"&gt;(&lt;/span&gt;Views: 187.9ms | ActiveRecord: 4.3ms&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;业务逻辑：极为简单的逻辑，返回一个帖子的 5 条回复
通过 Jbuilder 返回 5 条回复的 Json 数据给前端。&lt;/p&gt;

&lt;p&gt;结果发现 views 的时间远远大于 db 的时间，这种情况该如何优化？&lt;/p&gt;

&lt;p&gt;jbuilder 的代码如下：&lt;/p&gt;
&lt;pre class="highlight erb"&gt;&lt;code&gt;json.array!(@comments) do |comment|
  json.extract! comment, :id, :content, :user_id, :topic_id, :reply_count
  #json.url api_comment_url(comment, format: :json)
end
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>dizhu</author>
      <pubDate>Fri, 28 Feb 2014 15:57:42 +0800</pubDate>
      <link>https://ruby-china.org/topics/17573</link>
      <guid>https://ruby-china.org/topics/17573</guid>
    </item>
  </channel>
</rss>
