2017-10-10 5 views
-3

私のRuby/Rackアプリケーションでは、中国語と日本語の静的な文字をRubyコードとHTMLビューで使用しています。アプリを実行しているときに例外が発生します。中国語を含むRuby/Rack WebアプリケーションのInvalidByteSequenceError

Encoding::InvalidByteSequenceError at/
/my_app/index.html.erb is not valid US-ASCII 

これはローカルのプロダクションサーバーでのみ発生します。 私のローカルマシン - Linux、リモートサーバ - FreeBSD。

私は「エンコード - > utf-8で保存」しようとしましたが、それは役に立ちませんでした。

私はRubyコードでエンコード/デコード機能を使用していません。これらの文字はファイルに静的に埋め込まれています。

+0

あなたの質問は何ですか? – sawa

+0

production/devマシンではどのバージョンのrubyを使用しますか? –

+0

@StanislavMekhonoshin 2.4.2 – Joharu

答えて

0

これは、文字列入力エンコーディングに問題がある可能性があります。たとえば、paramsで受け取った文字列。エラーメッセージを停止

"Some String".force_encoding("UTF-8")

私は経由でUTF-8にエンコーディングを強制しなければなりませんでした。

関連する問題