Ubuntu で nginx を使用して WebDAV ファイル サーバーを構築する詳細なプロセス

Ubuntu で nginx を使用して WebDAV ファイル サーバーを構築する詳細なプロセス

nginxをインストールする

nginx-fullをインストールする必要があることに注意してください。デフォルトのnginxには webdav モジュールが含まれていません。

$ sudo apt install -y nginx-full

関連するフォルダを作成する

# 共有ファイルを保存する場所$ sudo mkdir -p /home/dav
$ sudo chown -R www-data:www-data /home/dav

構成

$ sudo vim /etc/nginx/sites-enabled/webdav.conf

内容は以下のとおりです。

サーバー{
    聞く 80;

    server_name ローカルホスト;
	# 中国語のファイル名が文字化けするのを防ぐために、utf-8 エンコードを使用するように設定します charset utf-8;

	# ファイルを保存するためのデフォルトのパスは root /home/dav です。

    auth_basic レルム名;
    # ユーザーパスワードファイルの保存場所 auth_basic_user_file /etc/nginx/.passwords.list;

    # dav で許可される操作 dav_methods PUT DELETE MKCOL COPY MOVE;
    dav_ext_methods PROPFIND オプション;
    
    # ファイルのデフォルトの権限を作成します。dav_access user:rw group:rw all:r;

    # 一時ファイルの場所 client_body_temp_path /tmp;
    
    # アップロードファイルの最大制限。0 は無制限を意味します。client_max_body_size 0;
    
    # 自動フォルダ作成を有効にする(必要な場合)
    create_full_put_path をオンにします。
}

パスワードを生成する

$ echo -n 'lpwm:' | sudo tee /etc/nginx/.passwords.list
$ openssl passwd -apr1 | sudo tee -a /etc/nginx/.passwords.list
# パスワードを確認した後、nginxを再起動します
$ sudo nginx -s リロード

Windows クライアント

まずブラウザを使ってサーバーのIPに直接アクセスして表示することができます。

ここに画像の説明を挿入

Windows ファイル エクスプローラーでネットワーク ドライブを直接マップしようとしましたが、うまくいきませんでした。サードパーティのクライアントRaiDriveを使用しました。これは非常に良心的です。標準バージョンは無料で、最大 8 つのドライブをサポートしており、明らかに十分です。

公式サイトからダウンロード: https://www.raidrive.com/download

インストール後、サーバー構成を追加する必要があります。

ここに画像の説明を挿入

Addressのチェックを外した場合にのみhttpプロトコルを使用できます。それ以外の場合は、デフォルトでhttpsのみを使用できます。

ここに画像の説明を挿入

追加後、ファイルエクスプローラーでマップされたドライブが自動的に開きます。

ここに画像の説明を挿入

ニース!

ここに画像の説明を挿入

上記は、Ubuntu で nginx を使用して webdav ファイル サーバーを構築する方法の詳細です。nginx を使用して webdav ファイル サーバーを構築する方法の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Docker ベースの nginx ファイル サーバーを構築する方法と手順
  • Windows 10 システムで nginx ファイル サーバーを構成するためのグラフィック チュートリアル
  • Nginx 静的ファイル サーバーの設定方法を学ぶ
  • nginx 設定静的ファイルサーバーの詳細な説明

<<:  iframe タグの使用方法の詳細な説明 (属性、透明度、適応高さ)

>>:  MySQL フィールドで NOT NULL を使用する必要があるのはなぜですか?

推薦する

HTML iframe で親ページと子ページ間の双方向メッセージングを実装する例

ある日、リーダーはメイン ページに iframe を埋め込み、親ページと子ページ間で双方向にメッセー...

JavaScript デザインパターン プロキシパターンの学習

目次概要実装保護エージェント仮想エージェント画像の遅延読み込みを実現する仮想プロキシ概要プロキシ パ...

Dockerにelasticsearchとkibanaをインストールする方法

Elasticsearchは現在非常に人気があり、多くの企業が利用しているため、esを知らないと軽蔑...

win2008 で mysql8.0.11 を mysql8.0.17 にアップグレードする詳細な手順

アップグレードの背景: MySQLの下位バージョンの脆弱性を解決するために、MySQLはMySQL ...

JavaScriptの浅いコピーと深いコピーについての簡単な説明

目次1. 直接譲渡2. 浅いコピー3. ディープコピー1. JSONオブジェクトメソッド2. 再帰コ...

MySQL の最適化: サブクエリの代わりに結合を使用する

サブクエリの代わりにJOINを使用するMySQL はバージョン 4.1 以降で SQL サブクエリを...

QTとJavaScript間のインタラクティブデータの実装

1. QTからJSへのデータフロー1. QTはJS関数を呼び出し、JSはパラメータを通じてQTの値を...

MySQL ロック制御同時実行方法

目次序文1. 楽観的ロックバージョンフィールドを追加する2. 悲観的ロック読み取りロック完全なテーブ...

アダプティブ Web デザインの手法 (モバイル フォンでの優れたアクセス エクスペリエンス)

1. HTML ヘッダーにビューポート タグを追加します。ウェブサイトの HTML ファイルの先頭...

Nginx 構成の実装 https

目次1: https証明書を準備する2: nginx sslモジュールを準備する3: SSL証明書を...

jQuery プロジェクトで重複送信を防ぐ方法

新しいプロジェクトでは、axios によって重複した送信を防ぐことができますが、古いプロジェクト (...

Reactスロットの使い方

目次必要コアアイデアReactでスロットを実装する2つの方法必要コンポーネントを自分で書きました。コ...

MySQLのトランザクションとデータ一貫性処理の問題を分析する

この記事では、セキュリティ、使用方法、同時処理などを通じて、MySQL トランザクションとデータの一...

Dockerで同じIDを持つ2つのイメージを削除する

今日 Docker コンテナを作成したとき、誤ってイメージの名前を間違って入力しました。その結果、コ...