设为首页 收藏本站
查看: 1075|回复: 0

[经验分享] FastDFS+Nginx配置及报错处理

[复制链接]

尚未签到

发表于 2018-11-10 10:40:03 | 显示全部楼层 |阅读模式
  一、环境部署
  1、准备工作
  创建程序报下载目录:/home/Package
mkdir -pv/home/Package  下载程序包:
cd /home/Package  
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.37.tar.gz
  
wget http://zlib.net/zlib-1.2.8.tar.gz
  
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
  
wget http://iweb.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.15.tar.gz
  
wget http://nginx.org/download/nginx-1.9.14.tar.gz
  2、关联包安装
  1)yum安装系统lib包
yum -y installgcc automake autoconf libtool make  
yum -y installgcc gcc-c++
  
yum -y installgc-devel
  2)安装pcre
cd /home/Package/  
tar fvxz pcre-8.37.tar.gz -C /usr/src/
  
cd /usr/src/pcre-8.37/
  
./configure
  
make && make install
  3)安装zlib
cd /home/Package/  
tar fvxz zlib-1.2.8.tar.gz -C /usr/src/
  
cd /usr/src/zlib-1.2.8/
  
./configure
  
make && make install
  4)安装openssl
cd /home/Package/  
tar fvxz openssl-1.0.1c.tar.gz -C /usr/src/
  
cd /usr/src/openssl-1.0.1c/
  
./configure
  
make && make instal
  5)安装fastdfs-nginx-module
cd /home/Package/  
tar fvxz fastdfs-nginx-module_v1.15.tar.gz -C /usr/src/
  6)创建软链接
ln -s /usr/lib64/libfastcommon.so /usr/lib/  
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/
  
ln -s /usr/lib64/libfastcommon.so /usr/local/lib64/
  
ln -s /usr/lib64/libfdfsclient.so /usr/lib/
  
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/
  
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib64/
  二、应用部署
  1、Nginx
cd /home/Package/  
tar fvxnginx-1.9.14.tar.gz -C /usr/src
  
cd/usr/src/nginx-1.9.14
  
./configure --prefix=/opt/nginx --user=www --group=www --sbin-path=/opt/nginx/sbin/nginx --pid-path=/opt/nginx/pid/nginx.pid --with-http_ssl_module --with-pcre=/usr/src/pcre-8.37 --with-zlib=/usr/src/zlib-1.2.8 --with-openssl=/usr/src/openssl-1.0.1i --add-module=/usr/src/fastdfs-nginx-module/src --with-http_image_filter_module --with-http_stub_status_module
  
make && make install
  2、FastDFS
tar fvx FastDFS_v4.06.tar -C /usr/src/  
cd/usr/src/FastDFS/
  
./make.sh
  
./make.shinstall
  三、应用配置
  1、配置nginx
ln -s/data/fdfs_store/data /usr/local/nginx/html/group1/M00  仅到需要进行动态缩略图显示的时候需要创建这个软连接
vim /usr/local/nginx/conf/nginx.conf  

  
# 显示动态缩略图
  
    location ~*/group1/M00/(\w+)/(\w+)/(.+).(png|jpg|gif)_(\d+)x(\d+)\.(png|jpg|gif) {
  
        root"/usr/local/nginx/html/";
  
        ngx_fastdfs_module;
  
        set $iw"$5";
  
        set $ih"$6";
  
        image_filterresize $iw $ih;
  
        image_filter_buffer2M;
  
        try_files/group1/M00/$1/$2/$3.$4 /404.html;
  
    }
  
# 显示原图
  
    location /group1/M00 {
  
        root"/usr/local/nginx/html/";
  
        ngx_fastdfs_module;
  
    }
  2、配置FastDFS
mv /etc/fdfs/root/fdfs.bak  
ln -s/usr/local/FastDFS/conf /etc/fdfs
  
vim /etc/fdfs/tracker.conf  (只列出需要修改的项目)
  

  
bind_addr=192.168.0.3
  
port=22122
  
base_path=/data/fastdfs
  

  
vim /etc/fdfs/storage.conf   (只列出需要修改的项目)
  

  
bind_addr=192.168.0.3
  
client_bind=true
  
port=23000
  
base_path=/data/fastdfs_storage
  
store_path0=/data/fastdfs_store
  
tracker_server=192.168.0.3:22122
  
http.server_port=80
  

  
vim /etc/fdfs/client.conf    (只列出需要修改的项目)
  

  
base_path=/data/fastdfs
  
tracker_server=192.168.0.3:22122
  
http.tracker_server_port=80
  

  
vim /etc/fdfs/mod_fastdfs.conf    (只列出需要修改的项目)
  

  
base_path=/data/fastdfs
  
tracker_server=192.168.0.3:22122
  
storage_server_port=23000
  
store_path0=/data/fastdfs_store
  
log_filename=/var/log/fdfs/mod_fdfs.log
  附录一、问题及修复
  1、[error] 30000#0: *1 open() "/usr/local/nginx/html/group1/M00/00/00/wKgAA1cLh12AI0kfAAAADzbdjmQ50_big.html"failed (2: No such file or directory), client: 192.168.0.181, server:localhost, request: "GET/group1/M00/00/00/wKgAA1cLh12AI0kfAAAADzbdjmQ50_big.html HTTP/1.1", host:"192.168.0.3"
  原因:具体原因不明,可能是在做alias匹配的时候路径出现的问题
  修复:修改nginx.conf中的location配置为:
  location/group1/M00/ {
  alias /home/FastDFS/data;
  ngx_fastdfs_module;
  }
  2、ERROR - file: ../common/fdfs_global.c, line:52, the format of filename "group1/M00/00/00/wKgAA1cLh12AI0kfAAAADzbdjmQ50_big.html"is invalid
  原因:nginx的fdfs的MOD里面默认没有开启url_have_group_name
  修复:开启mod_fastdfs.conf文件中的url_have_group_name选项,后重启nginx
  3、/usr/src/fastdfs-nginx-module/src/common.c:21:25:致命错误:fdfs_define.h:没有那个文件或目录
  #include "fdfs_define.h"
  ^
  编译中断。
  原因:编译安装nginx的fastdfs插件的头文件没有找到,由于编译nginx时候系统会到/usr/local/include,而编译安装fastdfs-nginx-module时则默认保存在了/usr/include目录。
  修复:ln -s /usr/include/fast* /usr/local/include/
  4、nginx启动后error.log日志报错
  ERROR - file:../storage/trunk_mgr/trunk_shared.c, line: 177, "No such file ordirectory" can't be accessed, error info: /data/fastdfs
  ERROR - file:../storage/trunk_mgr/trunk_shared.c, line: 177, "No such file ordirectory" can't be accessed, error info: /data/fastdfs
  ERROR - file:../storage/trunk_mgr/trunk_shared.c, line: 177, "No such file ordirectory" can't be accessed, error info: /data/fastdfs
  ERROR - file:../storage/trunk_mgr/trunk_shared.c, line: 177, "No such file ordirectory" can't be accessed, error info: /data/fastdfs
  原因:nginx的fdfs插件没有在/etc/fdfs目录中找到http.conf和mime.types。
  修复:复制或者创建对应文件的软连接
  cp/usr/local/FastDFS/conf/http.conf /etc/fdfs/
  cp/usr/local/FastDFS/conf/mime.types /etc/fdfs/
  5、页面访问动态缩略图返回415
  原因:首先需要排除文件类型的问题,image_filter只支持jpg、git和png三种格式的图片文件,调用其他格式的图片文件会返回415。其次要确认设置的image_filter缓存是否小于上传的图片大小,如果小于同样会报415错误。如果排除以上两种可能性,那么出现的问题应该是没有在Nginx页面的DocumentRoot目录创建FastDFS数据存储的软连接。
  修复:执行下列命令创建软连接:
  # mkdir -pv/usr/local/nginx/html/group1
  # ln -s /data/fastdfs_store/data/usr/local/nginx/html/group1/M00



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-633162-1-1.html 上篇帖子: nginx 499 下篇帖子: 玩玩负载均衡---在window与linux下配置nginx
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表