一、环境信息LinuxCentOS / Rocky / RHEL 系列Nginx1.24.0FastDFS5.05fastdfs-nginx-module1.16fastcommon1.0.38fastdfs-nginx-module下载地址下载后切换代码历史版本至最开始1.16代码位置https://github.com/happyfish100/fastdfs-nginx-module然后修改config配置如下目录 /usr/local/src/fastdfs-nginx-module/srcngx_addon_namengx_http_fastdfs_module HTTP_MODULES$HTTP_MODULES ngx_http_fastdfs_module NGX_ADDON_SRCS$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_fastdfs_module.c CORE_INCS$CORE_INCS /usr/local/include CORE_LIBS$CORE_LIBS -lfastcommon -lfdfsclient CFLAGS$CFLAGS -D_FILE_OFFSET_BITS64 -DFDFS_OUTPUT_CHUNK_SIZE256*1024 -DFDFS_MOD_CONF_FILENAME\/etc/fdfs/mod_fastdfs.conf\源码目录/usr/local/src安装目录/usr/local/nginx /etc/fdfs二、编译安装 Nginx FastDFS 模块进入 nginx 源码目录cd /usr/local/src/nginx-1.24.0编译配置./configure \ --prefix/usr/local/nginx \ --add-module/usr/local/src/fastdfs-nginx-module/src编译安装make make install验证/usr/local/nginx/sbin/nginx -V输出包含--add-module/usr/local/src/fastdfs-nginx-module/src说明模块编译成功。三、Nginx 配置编辑/usr/local/nginx/conf/nginx.confserver 配置server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } location ~/group([0-9])/M00 { ngx_fastdfs_module; } }四、配置 mod_fastdfs.conf复制模板cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/修改/etc/fdfs/mod_fastdfs.conf关键参数tracker 地址tracker_server192.168.2.237:22122storage 路径store_path0/data/fastdfs/storageURL 是否包含 groupurl_have_group_name truegroup 数量group_count 1添加 group 配置[group1] group_namegroup1 storage_server_port23000 store_path_count1 store_path0/data/fastdfs/storage五、配置 http.conf 和 mime.typesFastDFS nginx 模块需要这两个文件。查找find /usr/local/src -name http.conf复制cp /usr/local/src/fastdfs-5.05/conf/http.conf /etc/fdfs/ cp /usr/local/src/fastdfs-5.05/conf/mime.types /etc/fdfs/确认ls /etc/fdfs结果client.conf http.conf mime.types mod_fastdfs.conf六、创建 storage 软链接非常关键FastDFS nginx 模块访问文件依赖M00目录。创建ln -s /data/fastdfs/storage/data /data/fastdfs/storage/data/M00目录结构/data/fastdfs/storage/data/M00七、启动 Nginx启动/usr/local/nginx/sbin/nginx检查ps -ef | grep nginx八、上传测试文件创建测试文件echo fastdfs test test.txt上传/usr/bin/fdfs_upload_file /etc/fdfs/client.conf test.txt返回group1/M00/00/00/wKgC7Wmz0KeAA-gQAAAADUid9Xg917.txt九、浏览器访问测试访问http://192.168.2.237/group1/M00/00/00/wKgC7Wmz0KeAA-gQAAAADUid9Xg917.txt成功返回fastdfs test说明FastDFS Nginx 成功部署。十、你遇到的主要问题总结问题1编译 nginx 报错fatal error: common_define.h: No such file or directory原因FastDFS 头文件引用方式#include common_define.hgcc 默认不会进入/usr/include/fastcommon解决复制头文件cp /usr/include/fastdfs/*.h /usr/include/ cp /usr/include/fastcommon/*.h /usr/include/问题2编译报错fatal error: fdfs_define.h: No such file or directory原因FastDFS 头文件路径不在 gcc 默认路径。解决复制头文件cp /usr/include/fastdfs/*.h /usr/include/问题3浏览器访问 FastDFS 文件失败原因/etc/fdfs/mod_fastdfs.conf 为空nginx 模块无法读取配置。解决复制配置cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/并正确配置 tracker 和 storage。问题4nginx 访问文件 404原因缺少 storage 软链接。解决ln -s /data/fastdfs/storage/data /data/fastdfs/storage/data/M00问题5nginx 启动后访问失败原因缺少http.conf mime.types解决复制cp fastdfs/conf/http.conf /etc/fdfs/ cp fastdfs/conf/mime.types /etc/fdfs/十一、最终目录结构/usr/local/nginx /etc/fdfs /data/fastdfsFastDFS 文件/data/fastdfs/storage/data/M00/00/00/xxx访问地址http://服务器IP/group1/M00/00/00/xxx十二、最终架构浏览器 │ │ HTTP ▼ Nginx │ │ ngx_fastdfs_module ▼ FastDFS Storage │ ▼ 文件数据
配置FastDFS的Nginx访问,一下就通了(三)
发布时间:2026/6/12 9:18:58
一、环境信息LinuxCentOS / Rocky / RHEL 系列Nginx1.24.0FastDFS5.05fastdfs-nginx-module1.16fastcommon1.0.38fastdfs-nginx-module下载地址下载后切换代码历史版本至最开始1.16代码位置https://github.com/happyfish100/fastdfs-nginx-module然后修改config配置如下目录 /usr/local/src/fastdfs-nginx-module/srcngx_addon_namengx_http_fastdfs_module HTTP_MODULES$HTTP_MODULES ngx_http_fastdfs_module NGX_ADDON_SRCS$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_fastdfs_module.c CORE_INCS$CORE_INCS /usr/local/include CORE_LIBS$CORE_LIBS -lfastcommon -lfdfsclient CFLAGS$CFLAGS -D_FILE_OFFSET_BITS64 -DFDFS_OUTPUT_CHUNK_SIZE256*1024 -DFDFS_MOD_CONF_FILENAME\/etc/fdfs/mod_fastdfs.conf\源码目录/usr/local/src安装目录/usr/local/nginx /etc/fdfs二、编译安装 Nginx FastDFS 模块进入 nginx 源码目录cd /usr/local/src/nginx-1.24.0编译配置./configure \ --prefix/usr/local/nginx \ --add-module/usr/local/src/fastdfs-nginx-module/src编译安装make make install验证/usr/local/nginx/sbin/nginx -V输出包含--add-module/usr/local/src/fastdfs-nginx-module/src说明模块编译成功。三、Nginx 配置编辑/usr/local/nginx/conf/nginx.confserver 配置server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } location ~/group([0-9])/M00 { ngx_fastdfs_module; } }四、配置 mod_fastdfs.conf复制模板cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/修改/etc/fdfs/mod_fastdfs.conf关键参数tracker 地址tracker_server192.168.2.237:22122storage 路径store_path0/data/fastdfs/storageURL 是否包含 groupurl_have_group_name truegroup 数量group_count 1添加 group 配置[group1] group_namegroup1 storage_server_port23000 store_path_count1 store_path0/data/fastdfs/storage五、配置 http.conf 和 mime.typesFastDFS nginx 模块需要这两个文件。查找find /usr/local/src -name http.conf复制cp /usr/local/src/fastdfs-5.05/conf/http.conf /etc/fdfs/ cp /usr/local/src/fastdfs-5.05/conf/mime.types /etc/fdfs/确认ls /etc/fdfs结果client.conf http.conf mime.types mod_fastdfs.conf六、创建 storage 软链接非常关键FastDFS nginx 模块访问文件依赖M00目录。创建ln -s /data/fastdfs/storage/data /data/fastdfs/storage/data/M00目录结构/data/fastdfs/storage/data/M00七、启动 Nginx启动/usr/local/nginx/sbin/nginx检查ps -ef | grep nginx八、上传测试文件创建测试文件echo fastdfs test test.txt上传/usr/bin/fdfs_upload_file /etc/fdfs/client.conf test.txt返回group1/M00/00/00/wKgC7Wmz0KeAA-gQAAAADUid9Xg917.txt九、浏览器访问测试访问http://192.168.2.237/group1/M00/00/00/wKgC7Wmz0KeAA-gQAAAADUid9Xg917.txt成功返回fastdfs test说明FastDFS Nginx 成功部署。十、你遇到的主要问题总结问题1编译 nginx 报错fatal error: common_define.h: No such file or directory原因FastDFS 头文件引用方式#include common_define.hgcc 默认不会进入/usr/include/fastcommon解决复制头文件cp /usr/include/fastdfs/*.h /usr/include/ cp /usr/include/fastcommon/*.h /usr/include/问题2编译报错fatal error: fdfs_define.h: No such file or directory原因FastDFS 头文件路径不在 gcc 默认路径。解决复制头文件cp /usr/include/fastdfs/*.h /usr/include/问题3浏览器访问 FastDFS 文件失败原因/etc/fdfs/mod_fastdfs.conf 为空nginx 模块无法读取配置。解决复制配置cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/并正确配置 tracker 和 storage。问题4nginx 访问文件 404原因缺少 storage 软链接。解决ln -s /data/fastdfs/storage/data /data/fastdfs/storage/data/M00问题5nginx 启动后访问失败原因缺少http.conf mime.types解决复制cp fastdfs/conf/http.conf /etc/fdfs/ cp fastdfs/conf/mime.types /etc/fdfs/十一、最终目录结构/usr/local/nginx /etc/fdfs /data/fastdfsFastDFS 文件/data/fastdfs/storage/data/M00/00/00/xxx访问地址http://服务器IP/group1/M00/00/00/xxx十二、最终架构浏览器 │ │ HTTP ▼ Nginx │ │ ngx_fastdfs_module ▼ FastDFS Storage │ ▼ 文件数据