Nginx+FastDFSでイメージサーバーを構築

Nginx+FastDFSでイメージサーバーを構築

設置環境

セントス

環境依存性:

yum -y gccをインストールします
yum インストール -y pcre pcre-devel
yum インストール -y zlib zlib-devel
yum インストール -y openssl openssl-devel
# makeがない場合は、makeをインストールする必要があります
yum インストール -y メイク

インストールと設定のプロセス

1. fastdfs ディレクトリを作成します。

mkdir -p /fastdfs/トラッカー
mkdir -p /fastdfs/ストレージ
mkdir -p /fastdfs/logs

1. libfastcomman(基本環境)をダウンロードしてインストールする

https://github.com/happyfish100/libfastcommon/archive/V1.0.7.ta​​r.gz を取得します。
tar -zxvf V1.0.7.ta​​r.gz
libfastcommon-1.0.7 をインストールします
./make.sh && ./make.sh インストール
# FastDFS の lib 構成ファイル パスの問題を解決するには、ファイルをコピーします。
cp /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
cp /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so

2. FastDFS をダウンロードしてインストールします。インストールが完了すると、デフォルトの設定ファイル ディレクトリは/etc/fdfs/になり、デフォルトのコマンドは/usr/bin/に配置され、 fdfs_で始まります。

https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz をダウンロードしてください
tar -zxvf V5.05.tar.gz
cd fastdfs-5.05/
./make.sh && ./make.sh インストール

3. トラッカーを設定する

# 設定ファイルを /etc/fdfs ディレクトリにコピーします cd .../fastdfs-5.05/conf
cp * /etc/fdfs/
sudo vim トラッカー.conf

bath_path を変更し、次のように設定します。

ベースパス=/fastdfs/トラッカー

トラッカーを起動します:

fdfs_trackerd /etc/fdfs/tracker.conf 開始

4. ストレージを構成する

vim ストレージ.conf

構成項目を変更し、次のように構成します。

#ログディレクトリ base_path=/fastdfs/storage  
#ストレージディレクトリ store_path0=/fastdfs/storage   
#トラッカーノード tracker_server=192.168.1.4:22122

ストレージを開始します:

fdfs_storaged /etc/fdfs/storage.conf 開始

5. クライアントを構成する

vimクライアント.conf

設定項目は次のとおりです。

#トラッカーノード tracker_server=192.168.1.4:22122
#ログパス base_path=/fastdfs/logs

6. nginx と fastdfs-nginx-module をインストールします。 fastdfs-nginx-module モジュールをインストールするときに再度コンパイルする必要があり、非常に面倒であるため、yum または apt を使用して nginx を直接インストールすることは推奨されません。

# fastdfs-nginx-module モジュールをダウンロードします cd /fastdfs
https://github.com/happyfish100/fastdfs-nginx-module/archive/5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip を取得します。
5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip を解凍します
mv fastdfs-nginx-モジュール-5e5f3566bbfa57418b5506aaefbe107a42c9fcb1 fastdfs-nginx-モジュール
# nginxをダウンロード
http://nginx.org/download/nginx-1.12.1.tar.gz をダウンロードしてください
tar -zxvf nginx-1.12.1.tar.gz
# nginxとfsatdfs-nginx-moduleをインストールします
nginx-1.12.1をインストールします
./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx --add-module=/fastdfs/fastdfs-nginx-module/src
作る
インストールする

7. mod_fastdfs.confファイルを設定する

cd /fastdfs/fastdfs-nginx-module/src
mod_fastdfs.confを/etc/fdfs/にコピーします。
vim /etc/fdfs/mod_fastdfs.conf

設定項目は次のとおりです。

connect_timeout=10 # クライアントアクセスファイル接続タイムアウト(単位:秒)
base_path=/fastdfs/tmp # ストレージ ログ パス tracker_server=192.168.1.4:22122 # トラッカー サービスの IP とポート url_have_group_name=true # アクセス リンク プレフィックスとグループ名 group_name=group1 # ストレージ グループ名と 1 対 1 に対応 store_path0=/fastdfs/storage # ファイル ストレージ パス

8. nginxを設定する

/opt/nginx/conf/ をコピーします。
vim nginx.conf

設定項目は以下のとおりで、group1 から始まるリソースにアクセスすると、fastdfs-nginx-module に渡されて処理されます。

# グループ0からグループ9までのドメインをリッスンし、処理のためにfastdfs-nginx-moduleモジュールに渡します。場所 ~/group([0-9])/ {
ngx_fastdfs_モジュール;
}

テスト

1. 写真をアップロードする

fdfs_upload_file /etc/fdfs/client.conf ~/Desktop/test.png

この時点で文字列が返されます。

2. テストにアクセスし、ブラウザに次のように入力します。

192.168.1.4/group1/M00/00/00/wKgBBF6Cu4GATwTvABy5G9p0iEE119.jpg

アクセス成功!

Nginx+FastDFS でイメージサーバーを構築する方法についての記事はこれで終わりです。Nginx+FastDFS でイメージサーバーを構築する方法についての詳細は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Centos7 構成 fastdfs および nginx 分散ファイル ストレージ システムの実装プロセス分析
  • Nginx リバース プロキシを使用して go-fastdfs を実行する例
  • SpringBootはFastDFS+Nginxを統合し、トークンベースのアンチホットリンク方式を統合します
  • FastDFS をインストールして設定し、Nginx-1.13.3 と統合する方法
  • Fastdfs と nginx の圧縮イメージ比率
  • nginx FastDFS 分散ストレージモジュールのテスト方法
  • コード分​​析を実現するためのFastDFSとNginxの統合

<<:  Vueカスタムツリーコントロールの使い方の詳細な説明

>>:  Windows で mysql-8.0.18-winx64 をインストールするチュートリアル (画像とテキスト付き)

推薦する

PostgreSQL データベースにおける varchar、char、text の比較に関する簡単な説明

以下のように表示されます。名前説明する文字可変(n)、varchar(n)長さ制限あり、可変長文字(...

Docker: /etc/default/docker の DOCKER_OPTS パラメータを変更しても反映されない

デフォルトでは、 /etc/default/docker 設定は有効になりません。docker 環境...

不規則な絵の滝の流れ原理の分析と応用

プロジェクトで発生した不規則な絵画壁のレイアウト問題は、次のように分析されます。 1.img dis...

Vue2 キューブUI 時間セレクターの詳細な説明

目次序文1. 需要と効果必要効果2. コードの実装index.vue(html)日付方法テスト結果3...

Tomcatサーバーのセキュリティ設定方法

Tomcat は、Java Community Process を通じて Sun が開発した、広く使...

CSS 共通スタイルで二重矢印を描画するサンプルコード

1. 単一の矢印への複数の呼び出し単一の矢印を実装したら、二重矢印を実装するのは簡単です。上では、単...

CentOS7にMySQL 8.0.26をインストールする手順

1. まず、お使いのマシンに応じて、MySQL 公式サイトから対応するデータベースをダウンロードしま...

MySQL で置換操作を使用したときにデータ損失が発生する問題の解決策

序文同社の開発者は、データの更新時に replace into ステートメントを使用していました。不...

JavaScript データのフラット化の詳細な説明

目次フラット化とは何か再帰トストリング減らすアンダーコア_.平坦化_。連合_。違い要約するフラット化...

WebデザイナーがRetinaディスプレイデバイス向けの画像を作成する方法

特記事項:この記事は、Chris Spooner の英語記事「Web デザイン用の Retina グ...

ElementUIはカスケードセレクタを実装します

この記事の例では、カスケードセレクターを実装するためのelementUIの具体的なコードを参考までに...

テーブルを開く際のMySQLスレッドの問題の解決方法

問題の説明最近、MySQL5.6.21サーバーがありました。アプリケーションがリリースされた後、同時...

Centos6 で 20TB を超えるディスクをパーティション分割してフォーマットするためのサンプル コード

1. サーバー環境の構成: 1. ディスクパーティションを確認します。最近、あるプロジェクト内のサー...

iostat を使用して Linux ハードディスクの IO パフォーマンスを表示する方法

TOP 観察: IO 待機に占められる CPU 時間の割合。30% を超えると、IO の負荷が高くな...

JS+Canvas が抽選ホイールを引く

この記事では、宝くじターンテーブルを描画するJS + Canvasの具体的なコードを参考までに共有し...