-
Notifications
You must be signed in to change notification settings - Fork 0
Use WebDav(or something else)
Rulia originally planned to develop built-in WebDav support but abandoned this plan for the following reasons:
- Many fundamental infrastructures in .NET do not support custom-built streams, such as handling compressed files. This means that even to access a single image file inside a compressed package, the entire stream would need to be read, making random access impossible and resulting in a poor user experience.
- On the Windows platform, there are already existing solutions for mapping WebDav to the file system. Since many of Rulia's functions are based on the file system, mapping WebDav as a disk allows these features to be used immediately without modification. A personal implementation would not likely outperform existing solutions.
- Some tools (e.g., rclone) support not only WebDav but also many other protocols such as SFTP, S3, etc., providing strong extensibility.
- Limited personal time.
I currently recommend the following two solutions:
Use the built-in "Add a network location" feature in Windows: add a network location in "This PC," and enter the WebDav server address as the URL. A WebDav directory will appear in "This PC," which can then be accessed by Rulia.
This solution is best suited for intranet environments. In practice, the built-in Windows WebDav support has shown only moderate performance with public WebDav servers, and the subjective experience suggests that transfer efficiency is not high.
rclone is a powerful tool that supports data transfer and synchronization and can map data from various sources as local directories.
In addition to WebDav, rclone supports many other protocols such as SFTP, S3, SMB, and NFS. For public WebDav servers, it is recommended to use rclone for mapping. Its extensive configuration options allow for customization to different network environments for optimal transfer speeds.
To use rclone to map directories in Windows, you need to install WinFsp. Once installed, rclone can be used to map directories in Windows.
Rulia は当初、組み込みの WebDav サポートを開発する予定でしたが、以下の理由でこの計画を中止しました:
- .NET には独自構築のストリームをサポートしない多くの基盤インフラがあり、圧縮ファイルの処理などが含まれます。そのため、圧縮ファイル内の画像ファイルにアクセスする場合でも、ストリーム全体を読み取る必要があり、ランダムアクセスができず、ユーザー体験が悪化します。
- Windows プラットフォームには、すでに WebDav をファイルシステムにマッピングするためのソリューションが存在します。Rulia の多くの機能はファイルシステムを基盤としているため、WebDav をディスクとしてマッピングすることで、それらの機能を変更せずにすぐに利用できます。自作の実装は既存のソリューションより優れているとは限りません。
- rclone などのツールは、WebDav だけでなく、SFTP、S3 など多くのプロトコルにも対応しており、拡張性が高いです。
- 個人的な時間が限られている。
現時点で以下の 2 つのソリューションを推奨します:
Windows 標準の「ネットワークの場所を追加」機能を使用します。「PC」にネットワークの場所を追加し、URL に WebDav サーバーのアドレスを入力します。これにより、「PC」に WebDav ディレクトリが表示され、Rulia でアクセスできます。
このソリューションは、イントラネット環境に適しています。実際の使用において、Windows 標準の WebDav サポートは、パブリック WebDav サーバーへの対応が限定的で、転送効率は高くないという主観的な印象があります。
rclone は非常に強力なツールで、データ転送や同期を行えるほか、外部のデータをローカルディレクトリとしてマッピングすることができます。
rclone は WebDav に加えて、SFTP、S3、SMB、NFS など多くのプロトコルをサポートしています。パブリック WebDav サーバーに対しては、rclone を使用してマッピングすることをお勧めします。rclone の豊富な設定により、さまざまなネットワーク環境に合わせた調整が可能で、最適な転送速度が得られます。
Windows で rclone を使用してディレクトリをマッピングするには、WinFsp をインストールする必要があります。インストール後、Windows で rclone によりディレクトリをマッピングできます。
Rulia 原本计划编写一个内置的 WebDav 支持,但因为以下原因放弃:
- .NET 中有不少基础设施无法使用自行构建的流,例如压缩包处理,这将导致就算是仅仅访问某个压缩包内图片文件,也必须完整读取整个流,因此无法做到随机访问,使用体验不佳.
- Windows 平台上已经有一些现成的 WebDav 到文件系统的方案,且 Rulia 的很多功能已经基于文件系统实现,将 WebDav 映射为磁盘的话这些功能不用修改立即可用,我个人重新实现一定不会比人家的更好.
- 一些工具(例如 rclone)除了支持 WebDav 外还支持很多其他协议,比如 sftp、s3 等,扩展性很强.
- 个人的时间不多.
个人目前推荐以下两种方案:
使用 Windows 自带的“添加网络位置”:在我的电脑中添加一个网络位置,URL 填写 WebDav 服务器地址即可,然后我的电脑中将出现一个 WebDav 目录,使用 Rulia 访问即可.
此方案适合内网环境,因为使用下来,此方案对于公网的 WebDav 支持程度一般,主观感受传输效率不高.
rclone 是一个非常强大的工具,它可以进行数据传输和同步,也可以将别处的数据映射为本地目录.
rclone 除了支持 WebDav 之外,还支持例如 sftp、s3、smb、nfs 等众多协议. 对于公网的 WebDav 服务器,个人推荐使用 rclone 进行映射,其丰富的配置可以让你针对不同的网络环境进行设置,以达到最佳传输速率.
在 Windows 下使用 rclone 映射目录,需要安装 WinFsp,安装完成后即可在 Windows 通过 rclone 映射目录.
以下是以臺灣正體中文為準的翻譯:
Rulia 原本計劃開發內建的 WebDav 支援,但因以下原因放棄此計劃:
- 在 .NET 中,有許多基礎設施無法支援自行構建的資料流,例如壓縮檔案處理。這導致即使只是要存取壓縮包內的單個圖片檔案,也必須完整讀取整個資料流,因此無法實現隨機存取,使用體驗不佳。
- 在 Windows 平臺上,已經有一些現成的方案可以將 WebDav 映射為檔案系統。由於 Rulia 的許多功能已基於檔案系統實現,將 WebDav 映射為磁碟後,這些功能可以不經修改直接使用。我個人實現的方案無法超越現有的解決方案。
- 某些工具(如 rclone)不僅支援 WebDav,還支援 SFTP、S3 等多種協議,擴充性極強。
- 個人時間有限。
我目前推薦以下兩種方案:
使用 Windows 內建的「新增網路位置」功能:在「此電腦」中新增網路位置,將 WebDav 伺服器位址填入 URL,即可在「此電腦」中顯示一個 WebDav 資料夾,並可使用 Rulia 存取。
此方案適合內部網路環境。實際使用經驗表明,Windows 內建的 WebDav 支援對於公網的 WebDav 伺服器支援度一般,且主觀上傳輸效率不高。
rclone 是一個功能非常強大的工具,支援資料傳輸與同步,也可將遠端資料映射為本機目錄。
rclone 除了支援 WebDav,還支援 SFTP、S3、SMB、NFS 等多種協議。對於公網的 WebDav 伺服器,建議使用 rclone 進行映射。其豐富的設定選項可根據不同網路環境進行調整,以達到最佳的傳輸速度。
在 Windows 上使用 rclone 進行目錄映射需要安裝 WinFsp。安裝完成後,即可在 Windows 上使用 rclone 來映射目錄。