« [VBA] 正規表現オブジェクトの使い方 | トップページ | PayPalボタンを使わずに、普通のカード決済のように導入する方法 »

FTPの転送モード

FTPでホームページを転送する前にやっておかないといけない設定があります。転送モードの設定です。

HTMLファイルだけの転送なら、どっちでもOK。配布されてるCGI プログラムのアップロードなどなら、作者の指示に従えばOK。ですが、自分でプログラムを書く場合、特にローカル(Windows)で作ったデータファイルをアップしてサーバー(UNIX)上のプログラムで使う場合、とても重要になってきます。

バイナリモードとテキスト(アスキー)モード

一般的に転送モードは以下の2種類です。

バイナリモード

何もしません。
そのままファイルを転送します。ローカルとサーバーのファイルサイズはまったく同じになります。

テキスト(アスキー)モード

改行コードを変換して転送します。
WindowsからUNIXのサーバーへ転送した場合、ファイルサイズは小さくなります。

FTPソフトによっては文字コードの変換もしてくれるものもあります。また、Unicode未対応のサーバーにUnicodeのファイルを転送する場合、テキストモード転送が失敗する可能性もあります。

改行コード

テキストモードで転送した場合、改行コードを自動的に変換してくれます。

Windows:Cr+Lf(\r\n)
Unix/Mac:Lf(\n)
昔のMac:Cr(\r)

ウェブサーバーはだいたいUNIXですから、テキストモードでデータファイルを転送した場合、改行コードはLf(\n)になります。改行を<BR>に変換したりする時は、\nを置換しなければいけません。\r\nを対象にするとマッチしないことになります。

バイナリモードで転送するファイル

改行コードが関係ないファイルや、変換したら困るファイルです。

画像ファイル(JPG、GIF、PNGとか)、圧縮ファイル(ZIP、LHZとか)、音楽ファイル(MID、MP3とか)、PDF、Flashなど

HTMLファイルはどちらでもOKです。HTMLファイルは改行コードは関係ありませんので、テキスト/バイナリどちらでもOKです。

テキストモードで転送するファイル

サーバー上で利用されるファイルです。

CGIプログラム(CGI、PL、PHPなど)、設定ファイル(.htaccessなど)などは絶対に。

ログファイルやテキストファイルなどは用途に応じて。プログラムで読み込んで使う時に、改行コードさえ分かっていればどちらでもOKです。一般的には、テキストモードみたいです。

|

« [VBA] 正規表現オブジェクトの使い方 | トップページ | PayPalボタンを使わずに、普通のカード決済のように導入する方法 »

「Web」カテゴリの記事

「パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/44406/11961758

この記事へのトラックバック一覧です: FTPの転送モード:

« [VBA] 正規表現オブジェクトの使い方 | トップページ | PayPalボタンを使わずに、普通のカード決済のように導入する方法 »