16 ポイント 投稿者 GN⁺ 2025-10-27 | 2件のコメント | WhatsAppで共有
  • ファイル保存のためのS3中心のインフラが事実上の標準になっているが、個人プロジェクトやセルフホスト環境ではWebDAVが依然として有用な代替案として示されている
  • 筆者はS3の複雑さと依存性に疲れを感じ、シンプルな認証ベースのファイルストレージとしてWebDAVを再び活用し始めたと説明している
  • WebDAV は MacOS Finder、Windows Explorer、rclone、curl などさまざまなツールで標準サポートされており、アクセスしやすい
  • Apache、Nginx、Caddy など主要なWebサーバーで簡単な設定だけでユーザーごとの非公開ディレクトリを構成でき、LDAP 認証などとの連携も可能
  • クラウド依存から離れ、独自のファイル管理インフラをシンプルに保ちたい開発者にとって、WebDAV は今でも実用的な選択肢である

S3中心のファイル保存が抱える問題

  • FTP は消え、SFTP はSSH および Unix 認証に過度に依存する構造で扱いづらい
    • AWS S3 が事実上の業界標準となったことで、ほとんどのWebアプリは S3 接続を前提に設計されている
    • これはAmazon には有利でも、他の利用者には不便をもたらす
  • 個人プロジェクトやセルフホスト環境では、S3 の複雑な機能は不要で、単に認証されたファイルストレージがあれば十分である
    • 筆者は S3 の利用をやめて WebDAV に切り替えており、他の開発者にも同じ選択を検討するよう勧めている

WebDAV が向いているユーザーと要件

  • WebDAV はファイルシステムレベルの HTTP アクセスが必要な個人ユーザーや小規模プロジェクトに適している
    • 必要な機能: 認証、ファイル書き込み、効率的な同期、デフォルトでの非公開設定、簡単な公開切り替え
    • 不要な機能: 高度な ACL、署名付き URL、バージョン管理、階層型ストレージ、ライフサイクルルール、クォータ など
  • こうした要件は多くの個人開発者にとって共感しやすく、OpenStack Swift、CEPH、Minio のような複雑なシステムを運用する必要はない
  • 特に Minio は最近、管理 UI を大幅に削除し、JSON ポリシーファイルを手動で作成する方式に変わったため、単純なファイル保存用途には非効率である

WebDAV のアクセス性とツールサポート

  • WebDAV はさまざまなOSやツールで標準サポートされている
    • MacOS Finder: 「サーバへ接続」メニューで https://... を入力
    • Windows Explorer: 「ネットワーク ドライブの割り当て」または「Web サイトへの接続」機能
    • CLI およびアプリ: rclone、curl、CyberDuck、WinSCP、Filezilla など
  • 多くの人は WebDAV を時代遅れだと考えているが、実際にはほとんどのWebサーバーで標準サポートされている
    • Apache、Nginx、Caddy、Lighttpd、IIS などで簡単に有効化できる
    • OwnCloud、NextCloud などでも WebDAV ベースのアクセスが使われている

WebDAV の実際の活用例

  • WebDAV はすでにCardDAV、CalDAVの形で連絡先やカレンダーの同期に使われている
    • つまりユーザーは、気づかないうちに WebDAV ベースのサービスを日常的に利用している
  • 筆者は Apache ベースで WebDAV を構成し、LDAP 認証を連携してユーザーごとの個人ディレクトリアクセスを実装した
    • Caddy ならユーザーごとのディレクトリ分離をもっと簡単に設定できるが、Apache でも十分可能である
    • Apache の設定はやや複雑だが、マルチユーザー環境でプライバシーを保証できる

Apache ベースの WebDAV 設定例

  • Apache で必要なモジュール: mod_dav, mod_dav_fs, mod_dav_lock
    • 古いクライアント互換のための BrowserMatch 設定も含む
  • 主な設定要素
    • DavLockDB, DavMinTimeout, DavDepthInfinity などで WebDAV の動作を制御
    • AuthType Basic, AuthBasicProvider ldap などを通じて LDAP 認証と連携
    • RewriteEngine を使って、ログインしたユーザーが自分のディレクトリだけにアクセスできるよう制限
  • /usr/local/www/webdav 配下にユーザー名と同じディレクトリを作成すれば、そのユーザーは認証後に自分の領域を利用できる

WebDAV の活用事例と拡張可能性

  • 筆者は WebDAV を次のようなアプリと一緒に使っている
    • Joplin: 自前サーバーにノートを同期するアプリ
    • Keepassium: iOS/MacOS 向け Keepass クライアント
    • VLCInfuse: メディアのストリーミングと再生
    • rclone: 静的ブログ公開用のファイル同期(NFS/SMB より高速で、VPN も不要)
  • また、Altmount という新しいプロジェクトも見つけた
    • Usenet に投稿されたコンテンツをダウンロードせずに「マウント」して直接アクセスできる
    • Usenet に簡単にマルチギガビットでアクセスできる点が興味深い

2件のコメント

 
kimjoin2 2025-10-27

家のインフラ内部では NFS や SMB を使っていて、外では WebDAV を便利に使っています。ははっ

 
GN⁺ 2025-10-27
Hacker Newsのコメント
  • 私は rclone の WebDAV クライアントとサーバーの両方を書いた
    これにより WebDAV サーバー間の同期やマウントが可能で、ローカルファイルシステムや S3、Google Drive などを WebDAV サーバーとして公開することもできる
    RFC は FTP よりましだが、それでも実装差による 非標準動作が多く、さまざまな回避策が必要になる
    更新時刻やハッシュの設定は標準ではできないが、ownCloud や Nextcloud のような実装はこれをサポートしている
    HTTP と TLS ベースなので、SFTP よりはるかに速い
    • NFS と比べるとどうなのか気になる
      NFS も TCP ベースで暗号化が可能だが、Windows のサポートは弱く、macOS だけが標準対応している
      一方 WebDAV は両方のプラットフォームでうまく動く
  • Android で WebDAV マウントが標準サポートされるといい
    今は davx5 を使っているが、ファイルアクセスが不便だ
    すでに構築済みの mTLS インフラとうまく合うので WebDAV を好んでいる
    サーバー側は sftpgo を使っている
  • タイトルは「I hate S3」だったが、S3 は適切な場面で使えば悪くない
    Amazon 独自の技術というわけではなく、Garage S3 のような EU Horizon 支援のオープンソースプロジェクトもある
    https://garagehq.deuxfleurs.fr/
    • 「AWS S3 SDK が事実上の Web プロトコル標準になってしまったのが嫌だ」という記事も書いてみたい
  • 実はすでに WebDAV を使っているかもしれない
    たとえば Tailscale Drive Share は WebDAV ベースで、Fastmail のファイルストレージにも WebDAV でアクセスできる
    WebDAV はかなり優れた技術だ
    • 私は CopyParty インスタンスをマウントするとき、いつも WebDAV を使う
      とてもよく動く
  • 9p プロトコルがもっと広く使われてほしい
    Windows と macOS の両方に内蔵サポートはあるが、一般ユーザーは利用できない
    Windows では WSL 専用、macOS では仮想化専用なので残念だ
    UI から直接 9p をマウントできたら素晴らしいと思う
  • WebDAV はまだ生きていると信じているので、最近 nginx 向け WebDAV モジュールを WIP として公開した
    NextCloud クライアント(デスクトップ/Android)と互換性があり、Gnome Online Accounts や Nautilus でも使える
    https://codeberg.org/lunae/dav-next
    まだパッケージ化やバイナリリリースはないが、フィードバック歓迎だ
  • WebDAV はシンプルで実装しやすく、息の長い技術だと思う
    私たちの会社のクラウドプラットフォームでも、WebDAV 経由でドライブのようにアクセスできる機能を開発中だ
    HTTP ベースのインフラをそのまま活用できるので、追加の複雑さはほとんどない
    • 完全に同意する
      退屈だが安定した技術こそが結局は長生きする
      しかもオープン標準だ
  • 「FTP は死んだ」という言葉には同意しない
    今でも多くの共有ホスティングが FTP アップロードを案内している
    SSH キーや SFTP も使えるが、ドキュメントには今でも FileZilla のような FTP ツールが言及されている
    OVHcloud の FTP ガイド
    • 私は 純粋な FTP をもう 15 年は使っていないと思う
      いまだに暗号化されていないプロトコルを使うなんて信じがたい
      そういうホスティングは即座に候補から外すだろう
    • 共有ホスティングが徐々に消えつつあるのに伴って、FTP も一緒に 衰退中
      昔ソフトウェア配布や学術界で使われていた時代は懐かしいが、今ではほとんど最後の用途しか残っていない
  • Sabre で簡単な WebDAV サーバーを作り、Devonthink データベースを同期している
    複数の iCloud アカウント利用者の間で同期でき、Dropbox の契約も不要だ
    CloudKit より速く、保守の負担も少ない
    これからも長く使えそうだ
    • iOS 向け Devonthink の WebDAV 同期は 高速で安定していて、サブスクリプション不要
      Web スクレイパーも含まれているので、LLM チャットボットの Markdown 保存先として良い
  • 投稿者は S3 API と S3 そのものを混同しているようだ
    最近はほとんどのベンダーが S3 API 互換性を提供している
    • 記事の後半で S3 互換サーバーには触れている
      結局は プロトコルそのものについての話に見える