向诚

向诚

巷子里的猫很自由,却没有归宿。
telegram
email

Mix Spaceのファイルシステムを使用して静的リソースを保存します。

Mix Space のバックエンドにはファイルシステムがあります。以下は例です:

image

実際には、このファイル管理システムは Mix Space がデプロイした特定のフォルダに直接依存しています。それはmx-space/static/の場所にあり、アイコン、アバター、ファイルはそれぞれavatariconfileに対応しています。したがって、これらのフォルダに直接ファイル操作を行うと、Mix Space のバックエンドも同期されます。この機能について、このサイトでは現在、FTP+PicListを使用して画像ホスティングを構築しています。以下に操作手順を共有します。

PicList は PicGo に基づいていますので、このチュートリアルは PicGo にも適用できます。

このサイトでは、1Panel+Docker を使用して Mix Space を構築しています。1Panel のコンテナファイルディレクトリの形式は通常/opt/1panel/docker/compose/container_name/data/です。具体的な状況は、ご自身のサーバーに基づいて判断して処理してください。したがって、FTP に対しては、ファイルディレクトリと認証操作を設定するだけで十分です。

image

続けて、PicList 内でftp-uploaderプラグインをダウンロードして設定します。以下は、バックエンドドメインを使用してリソースにアクセスするための JSON 構成の例です:

{
  "img": {
    "url": "getaway", //APIアドレス
    "path": "/api/v2/objects/*type*/{fullName}", //type:avatar,icon,file
    "uploadPath": "/{fullName}",
    "host": "serverIP",
    "port": 21,
    "username": "ftpuser",
    "password": "ftppass"
  }
}

私のように独自のドメインを使用している場合、プロキシが必要です。以下は私のデプロイ計画ですので、ご自身の状況に合わせて変更してください。

# Nginxプロキシ設定

location ^~ /shiro/files/ { # プロキシするフォルダ(カスタム)
    proxy_pass http://127.0.0.1:2333/api/v2/objects/file/; 
    proxy_set_header Host $host; 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header REMOTE-HOST $remote_addr; 
    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection "upgrade"; 
    proxy_set_header X-Forwarded-Proto $scheme; 
    proxy_http_version 1.1; 
    add_header X-Cache $upstream_cache_status; 
    add_header Strict-Transport-Security "max-age=31536000"; 
    add_header Cache-Control no-cache; 
}

/shiro/files/というフロントエンドリクエストパスの場合、このサイトのすべてのhttps://domain/shiro/files/リクエストは Mix Space のリソースフォルダにプロキシされ、独自のドメインで静的リソースにアクセスする効果が得られます。プロキシ設定はavatariconfileに対して複数のプロキシ設定を追加することができます。

// ftp-uploaderプラグインの設定

{
  "img": {
    "url": "https://domain", //独自のドメイン
    "path": "/shiro/files/{fullName}", //プロキシするフォルダ
    "uploadPath": "/{fullName}",
    "host": "serverIP",
    "port": 21,
    "username": "ftpuser",
    "password": "ftppass"
  }
}

この記事は Mix Space から xLog に同期されました。
元のリンクは https://de3ay.com/posts/tech/mixspace-filesystem です。


読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。