FTPクライアント使い分け時に気をつけたい「文字コードと改行コード」

Dreamweaver LinuxコマンドTips web制作 アプリケーション別 サーバー プログラミング

広報:齊藤 メイ 広報:齊藤 メイ

Posted on 2015年08月14日(金)18:11
Updated on 2015年08月14日(金)17:17


FTPクライアント使い分け時に気をつけたい「文字コードと改行コード」

通常FTPクライアントを使い分ける事はないと思いますが、状況により止むを得ず、普段とは違うFTPクライアントを使う事もあるでしょう。本日は「FTPクライアント使い分け時に気をつけたい「文字コードと改行コード」」についてです。

こんにちは。猫ITソリューションズ広報の齊藤メイ(♀)です。本日は、「FTPクライアント使い分け時に気をつけたい「文字コードと改行コード」」についてです。

この記事では、そもそもFTPで接続するのは云々、という話はしません。しかしFTPクライアントだろうとSSHクライアントだろうと、気にした方がいい点について触れます。それは、

文字コードと改行コードについてです。

気にしないと何が起こるかは色々ありますが、今回はhtmlファイルをアップロードして、後日ダウンロードしたら、1行おきに改行されていたという事象について解説します。というか私が困っていた事なんですけど。

文字コードと改行コードとは?

問題解決のために、まずは文字コードと改行コードについて理解を深めて下さい。既に多くの方により解説されています。感謝いたします。

文字コードについて
http://ash.jp/code/code.htm

改行コードについて
http://www.tohoho-web.com/wwwxx011.htm

文字コード・改行コードの調べ方

次に文字コードと改行コードの調べ方です。手法はたくさんありますが、私がよく使う手法をローカル・サーバーそれぞれで挙げてみます。

ローカル

FileCode Checker

その名の通り。
専用ソフトで調べるのが手っ取り早いですね。
http://www.vector.co.jp/soft/winnt/util/se478635.html?ds

秀丸

http://d.hatena.ne.jp/kzykz/20071119/1195482384
その他→動作環境→上級者向け設定をチェック→ウインドウ/高度なウインドウ→エンコードの種類
ここを、
常に表示+改行コード
とする。

サーバー

Linux(猫ITソリューションズではCentOS)のコマンドになります。

文字コード

改行コード


改行コードがCRの場合 :^M
改行コードがLFの場合 :$
改行コードがCRLFの場合:^M$

http://www.m-bsys.com/linux/check-newline

何故1行おきに改行されるのか?

本題に入ります。
以下はFTP操作を、
で行った場合の例です。
なお各アプリケーションはデフォルト設定という前提でお話します。

********
DW(=Windows)で作ったファイルは、CRLF

A、DWでアップロードすると、サーバーではLFになる。
B、DWでダウンロードすると、CRLFに変換される。

C、Filezillaでアップロードすると、変換されない(=元がCRLFでもLFでも関係なく無変換)
D、Filezillaでダウンロードすると、変換されない(=元がCRLFでもLFでも関係なく無変換)
********

C→Bとすると改行が二重になる。
つまり、CRLFのサーバーファイルをDWでダウンロードすると、CRLFが二重になるため、改行も二重になる。

ちなみにFileZillaでDLしたLFファイルをDWで表示させても改行は二重にならず、保存しても改行は二重にならない。ただし文字コードはCRLFに変換されて保存される。

アップロードするファイルはCRLF、アップロードするとLF、しかしダウンロードするとLFのままの場合の対処方法

「デフォルト設定を変更する」という概念はサーバーだろうとローカルだろうと同じですので、ローカルで対応する方はその点を考慮して対応していただければと思います。

case1:FTP サーバー「vsftpd」のアスキーモードでのダウンロード・アップロードのデフォルト設定を変更する

http://blog.thingslabo.com/archives/000273.html

case2:Dreamweaverの改行コードのデフォルト設定を変更する

http://www.gravity-works.jp/gravica/web/cat31/002447.html

あまり発生しない問題?ですがお役に立てば幸いです。

いかがでしたでしょうか?
猫ITソリューションズは、飼い主の皆さんにITを活用しあらゆるシーンで的確なアドバイスをいたします。それではまたお会いしましょう。

FTPクライアント使い分け時に気をつけたい「文字コードと改行コード」

see you!

 

本件に関するお問い合わせ先

猫ITソリューションズ

049-290-8502
お問い合わせフォーム



Member Profile

広報:齊藤 メイ

埼玉在住の三毛猫です。趣味は日向ぼっこ、好きな猫缶はカツオ系です。仲良くしてくださいね!

Facebook
Twitter

代表:齊藤 智宏

埼玉在住のWebデベロッパーです。80's洋楽、映画、レトロゲームが大好きです。よろしく!

Facebook
Twitter

Contact

ご意見、ご相談などお気軽にお問い合わせ下さい。お問い合わせ内容の確認後、担当者よりご連絡させていただきます。

049-290-8502
お問い合わせフォーム