CentOS 8 环境下安装Nginx (包含fastdfs模块)

文 | 平哥 日期 | 20201025

Step 1 上传并解压安装文件

上传并解压文件:fastdfs-nginx-module_v1.16.tar.gz

Step 2 修改配置文件

进入解压目录中src目录

# cd fastdfs-nginx-module/src

编辑config文件,

# vim config

修改配置文件中第四行,把路径中local去掉。
参数是用于配置安装nginx中的FastDFS组件的时候,在什么位置查找FastDFS核心代码。
修改后如图:

image

Step 3 安装nginx的依赖

# yum  install -y  gcc  gcc-c++  make  automake  autoconf  libtool  pcre  pcre-devel  zlib  zlib-devel openssl openssl-devel

显示如下代表安装成功:


image

Step 4 上传Nginx并解压

上传并解压文件:nginx-1.16.1.tar.gz

Step 5 修改Nginx配置

1. 进入到nginx文件夹

# cd nginx-1.16.1

2. 创建临时目录
修改配置文件中好多位置都使用了/var/temp/nginx目录,但是默认不会自动创建这个目录的,需要手动创建。

# mkdir -p /var/temp/nginx

3. 修改配置文件参数
命令如下:

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/root/upload/fastdfs-nginx-module/src

提示:--add-module必须定义,此配置信息是用于指定安装Nginx时需要加载的模块,如果未指定,Nginx安装过程不会加载fastdfs-nginx-module模块,后续功能无法实现。值为Step 1 解压目录中的src目录

显示如下信息代表安装成功:


image

Step 6 编译并安装Nginx

在解压的Nginx目录下:/root/upload/nginx-1.16.1
执行编译命令:

# make

结果如图:


image

执行安装命令:

# make install

结果如图:


image

Step 7 配置fastdfs-nginx-module模块配置文件

1. 复制配置文件
复制配置文件fastdfs-nginx-module/src/mod_fastdfs.conf到/etc/fdfs目录中

# cp /root/upload/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

2. 修改mod_fastdfs.conf
进入/etc/fdfs,编辑mod_fastdfs.conf。需要修改文件中四处内容,这四处内容的含义:

connect_timeout=2 #连接超时时间,单位秒
tracker_server=tracker:22122 #tracker服务结点
url_have_group_name = false #URL中是否包含group名称
store_path0=/home/yuqing/fastdfs # storage服务结点的存储位置,与配置storage结点一致

最终修改为:

connect_timeout=10
tracker_server=192.168.9.136:22122 
url_have_group_name = true
store_path0=/usr/local/fastdfs/storage/store

Step 8 提供FastDFS需要的HTTP配置文件

复制 FastDFS安装包 (可详见我的文章:CentOS 环境下安装 FastDFS)中的两个配置文件(http.conf和mime.types)到/etc/fdfs目录中:

# cp /root/upload/FastDFS/conf/http.conf /etc/fdfs/
# cp /root/local/upload/FastDFS/conf/mime.types /etc/fdfs/

Step 9 创建网络访问存储服务的软连接

在上传文件到FastDFS后,FastDFS会返回group1/M00/00/00/xxxxxxxxxx.xxx。其中group1是卷名,在mod_fastdfs.conf配置文件中已配置了url_have_group_name,以保证URL解析正确。而其中的 M00 是FastDFS保存数据时使用的虚拟目录,需要将这个虚拟目录定位到真实数据目录上。

# ln -s /usr/local/fastdfs/storage/store/data/ /usr/local/fastdfs/storage/store/data/M00

Step 10 修改nginx配置文件

1. 进入到安装后nginx目录
注意是安装目录,不是解压目录

# cd /usr/local/nginx/conf

2. 编辑配置文件

# vim nginx.conf

修改两处内容:
第一处:

# user nobody

大概注释并改成:

user  root; # Nginx需要访问linux文件系统,必须有文件系统的权限。

User root代表nginx访问文件系统的权限是root用户权限。如果不开启权限,可能有404访问错误。

第二处:
原来内容:


image

修改后:


image

Step 11 启动Nginx

进入到nginx安装目录的sbin文件夹

# cd /usr/local/nginx/sbin/

启动nginx命令:

# ./nginx

另,关闭nginx的命令:

# ./nginx -s quit

Step 12 测试访问FastDFS的照片:

使用浏览器查看FastDFS中保存的文件:
http://ip:8888/group1/M00/00/00/xxxxxxx.xxx
测试上传的文件: group1/M00/00/00/wKgJiF1mtCuAWIvPAAP0ht-y7J0224.png
测试WEB访问地址:

image

你可能感兴趣的:(CentOS 8 环境下安装Nginx (包含fastdfs模块))