Web開発者のNetDrive活用 — SFTP/FTPでステージングサーバーを編集

読了目安 5 分 use-case sftp ftp
Morgan
MorganStaff Engineer
Web開発者がNetDriveでFTP・SFTPのステージングサーバーをドライブとしてマウントし、使い慣れたエディターで開き、セッション制限やシンボリックリンクに対応する方法を紹介します。

フリーランスの開発者が6つのクライアントサイトを管理しており、どれもFTPかSFTPしか使えない共有ホスティング上にあります。修正のたびに専用のFTPクライアントを開き、ファイルをダウンロードし、編集して、再びアップロードします。NetDriveならこの手間が不要です。サーバーがドライブとして表示されるので、エディターがリモートファイルを直接開いて保存できます。

NetDrive drive manager showing Google Drive, S3 and pCloud mounted as drive lettersMounted clouds appearing as native drives in Windows File Explorer

ステージングサーバーを普通のドライブに

NetDrive を使えば Google Drive、OneDrive、S3、SFTP、WebDAV などが Windows と macOS でネイティブドライブとして表示されます — 同期も、まるごとダウンロードも不要です。

  • FTP・SFTPホストをドライブレターやボリューム名でマウント
  • どのエディターやIDEからでもリモートファイルを開いて保存
  • SFTPシンボリックリンク対応と接続ごとの権限オプション
WindowsmacOS
NetDriveをダウンロード →

無料トライアル。永久ライセンスとサブスクリプションプランあり。

マウントしたドライブが転送クライアントより便利な理由

転送クライアントでは、編集のたびに往復作業が発生します。マウントしたドライブはサーバーをフォルダーとして扱います。エディター、検索ツール、画像最適化ツールは、それがリモートだと知らないまま動作します。

小さな場面で差が出ます。ダウンロードフォルダーのロゴをそのまま/assetsにドラッグしたり、ディレクトリ全体をエディターで開いたり、ローカルのチェックアウトとステージング上のコピーをいつものファイル比較ツールで比べたりできます。

ファイルマネージャーに通常のボリュームとして表示されたNetDriveのマウント済みドライブ

ホストを設定する

NetDriveはFTPとSFTPの両方に対応しています。ホストがSFTPを提供しているなら、SFTPを選びましょう。

  1. NetDriveを開いて新しいドライブを追加し、SFTP(またはFTP)を選びます。
  2. ホスト、ポート、ユーザー名を入力します。ポートは推測せず、ホスティング会社が案内している番号を使います。
  3. 保存してから、ドライブ一覧でドライブをマウントします。

保存済みの接続がマウントされているNetDriveのドライブ一覧

3.7.687以降、FTPとSFTPの接続は資格情報なしで保存できます。共有ワークステーションで毎回入力を求めたいときに便利です。

Web開発者がつまずきやすいポイント

セッション制限。 多くの共有ホストは、1アカウントが同時に開けるFTP・SFTPセッション数に上限を設けています。NetDriveは3.3.349で、これらのプロトコルの同時セッション数を制限する機能を追加しました。ホストの上限内に収められるので、原因不明の「too many connections」による拒否を避けられます。

シンボリックリンク。 デプロイスクリプトがcurrentをタイムスタンプ付きのリリースフォルダーにリンクしている場合、SFTPのシンボリックリンクが重要になります。3.17.817以降で対応しています。それでも表示されないときは、Fix SFTP Symlinks Not Showing in NetDriveで確認項目を順に見られます。

タイムアウトと時刻オフセット。 遅いホストではFTP接続が止まることがあります。Fix FTP Connection Timeout in NetDriveを参照してください。また、サーバーの時計がこちらと異なる場合に使える手動のFTP時刻オフセット(3.17.799で追加)もあり、タイムスタンプの比較がおかしいときに役立ちます。

認証エラー。 鍵とパスワードの問題はFix SFTP Authentication in NetDriveで扱っています。

本番環境を守る

ステージングと本番は、同じホスティングアカウント上にあることがよくあります。本番をRead-only driveとしてマウントすれば、公開中のテンプレートを上書きする心配なく、ログを見たりファイルを比較したりできます。ステージングは通常の読み書き可能なドライブとしてマウントします。異なるドライブタイプで両方を同時に表示しておくのは、手軽な安全策です。Read-Only Drives in NetDriveを参照してください。

NetDriveがしないこと

NetDriveはデプロイツールではありません。ビルドの実行、リリースの差分比較、スケジュールに沿った変更のプッシュは行いません。オフラインモードもないため、ホストに到達できなければドライブも使えません。自分のコードは引き続きバージョン管理で扱い、マウントしたドライブは手早い編集や確認に使ってください。

キャッシュについても期待値を合わせておきましょう。他の人が行った変更がファイル一覧に遅れて反映されることがあり、手動の更新が使えます。方法はForce Folder Refresh in NetDriveで紹介しています。

まとめ

FTPやSFTPしか使えないホストが日常業務の中心なら、マウントしたドライブは6つの別々の転送セッションを6つのフォルダーに変えてくれます。Windowsでの詳しい設定はMount an SFTP Server on Windows with NetDrive、macOS版はMount an SFTP Server on macOSにあります。

— Morgan, NetDrive