<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>gykpro (铺路微光)</title>
    <link>https://ruby-china.org/gykpro</link>
    <description/>
    <language>en-us</language>
    <item>
      <title>如何开发一个彻底 GBK 编码的 Rails 站点呢？</title>
      <description>&lt;h2 id="需求"&gt;需求&lt;/h2&gt;
&lt;p&gt;访问这个站点的客户端（定制浏览器）只支持 gbk 编码，所以需要输出 gbk 编码的页面（先不管 gbk 和 gbxxxxx 的差异）&lt;/p&gt;
&lt;h2 id="已经完成的部分"&gt;已经完成的部分&lt;/h2&gt;
&lt;p&gt;页面本身已经可以 GBK 编码输出，做法如下：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;config/application.rb 中加一行
&lt;code&gt;config.encoding = "gbk"&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;controller 中加入&lt;/p&gt;
&lt;pre class="highlight ruby"&gt;&lt;code&gt;&lt;span class="n"&gt;before_filter&lt;/span&gt; &lt;span class="ss"&gt;:configure_charsets&lt;/span&gt; 
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="Configuring charset to WhateverEncodingYouWant"&gt;Configuring charset to WhateverEncodingYouWant&lt;/h2&gt;
&lt;p&gt;def configure_charsets 
     headers["Content-Type"] = "text/html; charset=GBK"&lt;br&gt;
  end &lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
- ruby 文件原本是utf-8编码的，于是在头部加入：
`# encoding: utf-8`

现在不带 assets 的页面已经可以运行和正常显示

# 问题
我不知道如何把 assets 文件也进行gbk编码输出
如果什么也不设置，直接访问 /assets/xx.js 会报这个错：

Encoding::UndefinedConversionError: U+00FB from UTF-8 to GBK\n

如果把文件保存成 gbk，会报这个错：

Encoding::InvalidByteSequenceError: \"\\xB4\" on UTF-8"

***所以我的问题是：如何系统地把 assets 输出为 GBK？包括 dev 环境和需要 precompile 的环境***
&lt;/code&gt;&lt;/pre&gt;</description>
      <author>gykpro</author>
      <pubDate>Wed, 11 Dec 2013 15:44:06 +0800</pubDate>
      <link>https://ruby-china.org/topics/16142</link>
      <guid>https://ruby-china.org/topics/16142</guid>
    </item>
  </channel>
</rss>
