CGIプログラムなどのテキストファイルの改行コードを変更する方法をご案内します。
改行コードと起こり得る問題
改行コードとは、ファイル内の改行に当る部分で(アプリケーションが)管理用に使っている記号です。目には見えないのですが「CR+LF」「LF」「CR」の3種類があり、アプリケーションの想定とファイルの実際が一致していないと、行がすべてつながったり、余計な記号が追加されて見えるなどの問題が起こります。
どの改行コードを使ってファイルが保存されるかは、それぞれのアプリケーションで初期設定が決まっており、この初期設定を変更できないアプリケーションもあります。
CGIプログラムでの改行コードの問題
CGIプログラムを改行コード「CR」で保存すると、文法エラーチェックでは問題が検出できないにも関わらず、ブラウザからアクセスすると「500 Internal Server Error」となります。
改行コードの変更方法
使用している編集ツール(テキストエディタ)で改行コードの指定ができる場合がありますので、まずお使いのアプリケーションに保存オプションがあればそれを使って下さい。指定できる改行コードは「LF」(Unix形式)、「CR+LF」(Windows形式)または「CR」(Mac形式)等です。CGI ファイルの場合は「CR」での保存は避けて下さい。
以下では、オンラインのテキストエディタで改行コードを変更する方法をご案内します。手元のテキストエディタでは改行コードが指定できない場合に使って下さい。
1. バックアップ
念のため、編集対象ファイルをコピーして別の名前で保存して下さい。
2. オンラインツールにアクセス
下記URLのオンラインテキストエディタサイトにアクセスして下さい。
3. 文字コードとファイル選択
オンラインエディタにアクセスすると、ファイルと文字コードを選択する画面が表示されます。
(1) 「charset」(文字コード)のプルダウンメニューからファイルの文字コードを選び、(2)「参照」のボタンから、編集したいファイルを選択して下さい。(環境によっては、ボタン名が異なる場合があります。)
※「文字コード」とは、「改行コード」とは異なり、「Shift_JIS」「UTF-8」などの指定のことです。「すぐ使えるCMS」のファイルの場合は、ダウンロードした製品名に記載のある文字コードを選んで下さい。
4. 「Begin to edit」ボタンを押して改行コード設定画面に進む
5. ファイルの内容確認
6. 改行コードの設定
「line feed code」の部分では、ファイルから検出された改行コードが初期選択されています。
Windows で編集するファイルであれば、「CR+LF (Windows) 」に変更して下さい。
CGI ファイルを Mac で編集して問題が出ている場合は、編集後のファイルをサーバにアップロードする直前に「LF (UNIX) 」に変換して下さい。