FileZilla は無料で使える FTP(File Transfer Protocol)ソフトウェアです。Windows と Mac の両方に対応しています。長年使ってきましたが、結構使いやすいツールなのでおすすめです。
今回は基本から便利な使い方、設定について紹介していきます。
インストール
公式サイトからダウンロードしましょう。
サーバーに接続する
メニューバー「ファイル」> サイトマネージャー からサーバーの接続や設定の編集を行うことができます。サイトマネージャーは Ctrl + S でも開くことができます。
- 「新しいサイト」をクリックし、接続先を追加
- 接続先の名前を入力
- 必要な情報を入力
いったんここまでできたら接続できるか確認してみましょう。
この時、サイト名は英語にするのがおすすめです。
接続先の量が少ないなら日本語でも問題ありませんが、接続先が増えてきたら探すのが大変です。英語で設定しておくと、サイトマネージャーの「エントリの選択」内にフォーカスしていれば、入力したキーの位置までカーソルを移動してくれるので、探すのが容易になります。
例えば「apple」という接続先名であれば、素早く「app」くらいまで打ち込むとその位置まで移動してくれます。
コードを書く上で英語は必須ですし、こういうところから慣れていきましょう。
接続時のディレクトリを指定する
接続した時に必ずしも最初に表示されるディレクトリが DocumentRoot(ウェブサイトのトップページのあるディレクトリ) とは限りません。例えば「接続時は/
で始まるから、/var/www/html
まで移動しないといけない」なんてこともよくあります。
毎回移動するのは大変面倒くさいので、接続時のディレクトリを指定しましょう。
- サイトマネージャー > サイトを選択 > 詳細タブ をクリック
- デフォルトのリモートディレクトリにパスを記述
画像の例では/var/www/html
が接続時のディレクトリになります。
また、デフォルトのローカルディレクトリも指定しておくと、接続時にローカルディレクトリが指定したものに切り替わります。設定しておいても良いでしょう。
おすすめの設定
タイムスタンプ維持
メニューバー「転送」> 転送したファイルのタイムスタンプを維持 にチェック
(もしくは Ctrl + U)
ファイルの更新日時はファイルを修正した時の時刻ですが、ファイルをダウンロードした時にはダウンロードした時刻になってしまいます。
それでは不便なので、この設定を行うことで同じタイムスタンプでファイルをダウンロードすることができます。
同期ブラウジング
メニューバー「表示」> 同期ブラウジング
(もしくは Ctrl + Y)
ローカルディレクトリとリモートディレクトリで、同じディレクトリまで移動をするとき、どちらか一方を移動したあとに片方のディレクトリを移動させる必要があります。
これは面倒なので、この設定を行うことで、ローカルディレクトリとリモートディレクトリのディレクトリ構造が同じ場合に限り、両方のディレクトリ移動をしてくれます。
もちろん、ディレクトリ構造が違う場所へ移動しようとすると同期ブラウジングは解除されます。
ディレクトリの比較
メニューバー「表示」 > ディレクトリの比較 > 有効 にチェック
(もしくは Ctrl + O)
ローカルとリモートのディレクトリを比較し、差異があれば背景色が変化し違いが分かりやすくなります。ファイルサイズ、更新日時の好きな方で比較することができますが、Git のようにソースコードの差異で比較することはできないため、ファイルに変更があったのかどうかは分かりません。
なるべく「同期ブラウジング」と一緒に有効化しておきましょう。
接続時の追加設定
「同期ブラウジング」と「ディレクトリの比較」を接続時に有効化することができます。この時、デフォルトのローカルディレクトリ/リモートディレクトリも一緒に設定しておきましょう。
ファイルをアップロード/ダウンロードする
Windows の場合ですが、
- ファイルをダブルクリック
- ファイルを選択状態にしてから Enter キーを押す
- ファイルを右クリック > ダウンロード
- ファイルをドラッグ&ドロップ
の4パターンでアップロード/ダウンロードすることができます。Mac だと Enter(Return)キーを押したときは「名前の変更」になります。
上記の中でもドラッグ&ドロップはドロップをミスって意図していないリモートディレクトリにファイルを移動してしまうこともあるので、あまりおすすめしません。
⚠️注意点
リモート側で delete キーを押せばファイルはすぐに削除されてしまいますし、ドラッグ&ドロップで簡単にファイルを移動することもできます。特にアラートなどが出ないため、取り返しのつかないことになることもあります。リモート側の操作は慎重に行いましょう。