↑先頭 最新 検索 追記 編集

dev : サイト開発と blex のサイト



tDiaryがPCでOK、サーバーでNG

PC環境で問題なく起動・表示ができるのに、サーバー環境で表示できない。

サーバーのerror_log:

index.rb:7: invalid multibyte char (UTF-8)
index.rb:6: syntax error, unexpected $end, expecting tSTRING_CONTENT or tSTRING_DBEG or tSTRING_DVAR or tSTRING_END
Premature end of script headers: index.rb

状態

文字コードが違っていて、それが起因してエラーとなっているように見える。
ここまで判明するのに、丸一日。
その文字コードが違っていると言われた index.rb をパソコンでみると、正しく UTF-8 となっている。

そこで、サーバー上で、index.rb を見ると、なんと確かに UFT-8 でないことが分かる。(ちょっと愕然)
不思議なことに、サーバー上には、4本のtDiaryが動作しており、同じ index.rb が、他では、ちゃんと UTF-8 になっていて、正しく tDiary が稼働している。

不明の理由ながら、一つの index.rb だけが、FTPでアップロードしたときに、文字コードが変換されたことになる。不可解。

解決

FTPソフトウェアに、テキストファイルとして転送する拡張子の設定がある。 その中の .rb を削除して、.rb ファイルは、バイナリーとして転送されるように設定。

再度、FTPでアップロードすると、勝手に文字コード変換されず、そのままの文字コードでサーバーに転送された。
無事、tDiaryが表示できた。

作成: 2012年10月23日 更新: 2012年10月23日
カテゴリ: システムFAQ サイトFAQ