FastDFS之——Web访问 FastDFS 出现的问题及解决方案

07-11 1148阅读

继续安装:

make

make install

进入nginx安装目录,修改其配置文件:

cd /usr/local/nginx/conf

vi nginx.conf

增加以下内容:

location /M00 {

root /home/yuqing/fastdfs/data;

ngx_fastdfs_module;

}

新建一个软连接:

ln -s /home/yuqing/fastdfs/data  /home/yuqing/fastdfs/data/M00

复制并修改mod_fastdfs.conf文件:

cp mod_fastdfs.conf /etc/fdfs/

vi /etc/fdfs/mod_fastdfs.conf

修改了这里:

tracker_server=10.0.0.42:22122

(复制这两个文件到fdfs配置文件,要不无法访问nginx)

(# cp /home/fastdfs-5.11/conf/http.conf /etc/fdfs/)

(# cp /home/fastdfs-5.11/conf/mime.types /etc/fdfs/)

重启nginx:

/usr/local/nginx/sbin/nginx -s stop;

/usr/local/nginx/sbin/nginx

报错:浏览器无法访问

查看nginx错误日志 如下

ERROR - file: ini_file_reader.c, line: 631, include file “http.conf” not exists, line: “#include http.conf”

ERROR - file: /home/packages/fastdfs-nginx-module-master/src/common.c, line: 163, load conf file “/etc/fdfs/mod_fastdfs.conf” fail, ret code: 2

解决:# cp /home/fastdfs-5.11/conf/http.conf /etc/fdfs/

ERROR - file: shared_func.c, line: 968, file /etc/fdfs/mime.types not exist

解决:# cp /home/fastdfs-5.11/conf/mime.types /etc/fdfs/

访问nginx 成功

下面看一下 mod_fastdfs.conf文件:

connect timeout in seconds

default value is 30s

connect_timeout=2

连接超时时间

network recv and send timeout in seconds

default value is 30s

network_timeout=30

发送接受数据 超时时间

the base path to store log files

base_path=/tmp

日志文件 位置

if load FastDFS parameters from tracker server

since V1.12

default value is false

load_fdfs_parameters_from_tracker=true

是否从 tracket服务器读取信息

如果不从tracket服务器读取信息,以下三个参数生效

storage sync file max delay seconds

same as tracker.conf

valid only when load_fdfs_parameters_from_tracker is false

since V1.12

default value is 86400 seconds (one day)

storage_sync_file_max_delay = 86400

当load_fdfs_parameters_from_tracker设置为false时,本参数生效

同步文件最大延迟时间,与tracker.conf文件中参数相同

默认是一天

if use storage ID instead of IP address

same as tracker.conf

valid only when load_fdfs_parameters_from_tracker is false

default value is false

since V1.13

use_storage_id = false

是否使用storage_id

specify storage ids filename, can use relative or absolute path

same as tracker.conf

valid only when load_fdfs_parameters_from_tracker is false

since V1.13

storage_ids_filename = storage_ids.conf

storage_id的位置

FastDFS tracker_server can ocur more than once, and tracker_server format is

“host:port”, host can be hostname or ip address

valid only when load_fdfs_parameters_from_tracker is true

tracker_server=10.0.0.42:22122

从tracket服务器读取信息,这个参数生效

tracket服务器地址、端口

the port of the local storage server

the default value is 23000

storage_server_port=23000

本storage server监听端口

the group name of the local storage server

group_name=group1

group组名

if the url / uri including the group name

set to false when uri like /M00/00/00/xxx

set to true when uri like ${group_name}/M00/00/00/xxx, such as group1/M00/xxx

default value is false

url_have_group_name = false

url链接中是否包含 组名

类似 /M00/00/00/xxx 和group1/M00/00/00/xxx

如果选择true 即包含组名,需要修改nginx配置文件

将  location /M00    改为     location /group1/M00

path(disk or mount point) count, default value is 1

must same as storage.conf

store_path_count=1

存储路径数量,必须和 storage.conf文件一致

store_path#, based 0, if store_path0 not exists, it’s value is base_path

the paths must be exist

must same as storage.conf

store_path0=/home/yuqing/fastdfs

#store_path1=/home/yuqing/fastdfs1

存储路径地址、必须和 storage.conf文件一致

standard log level as syslog, case insensitive, value list:

emerg for emergency

alert

crit for critical

error

warn for warning

notice

info

debug

log_level=info

日志级别

set the log filename, such as /usr/local/apache2/logs/mod_fastdfs.log

empty for output to stderr (apache and nginx error_log file)

log_filename=

设置日志的名称,为空则记录到 http服务的错误日志里

response mode when the file not exist in the local file system

proxy: get the content from other storage server, then send to client

redirect: redirect to the original storage server (HTTP Header is Location)

response_mode=proxy

当文件在本地不存在时怎样回应

  • proxy 代理,从其它存储服务器获取内容,然后发送给客户
  • redirect  重定向原始存储服务器的http头

    the NIC alias prefix, such as eth in Linux, you can see it by ifconfig -a

    multi aliases split by comma. empty value means auto set by OS type

    this paramter used to get all ip address of the local host

    default values is empty

    if_alias_prefix=

    ????

    多种别名用逗号分隔,空值表示自动设置系统类型

    这个参数用于得到本机的所有ip

    use “#include” directive to include HTTP config file

    NOTE: #include is an include directive, do NOT remove the # before include

    #include http.conf

    使用#include指令 包含http配置文件

    注意:#include  这是一个包含指令,不要删除 include前面的 #

    if support flv

    default value is false

    since v1.15

    flv_support = true

    是否支持flv文件,默认不支持

    flv file extension name

    default value is flv

    since v1.15

    flv_extension = flv

    flv文件的扩展名,默认是flv

    set the group count

    set to none zero to support multi-group on this storage server

    set to 0  for single group only

    groups settings section as [group1], [group2], …, [groupN]

    default value is 0

    since v1.14

    group_count = 0

    设置组的数量

    设置没有0 ,支持多个group组在这个存储服务器上

    设置0 为只有一个组

    如果服务器上多个组,组的设置 就像这样 [group1], [group2], …, [groupN]

    默认是0,一组

    group settings for group #1

    since v1.14

    when support multi-group on this storage server, uncomment following section

    #[group1]

    #group_name=group1

    #storage_server_port=23000

    #store_path_count=2

    #store_path0=/home/yuqing/fastdfs

    #store_path1=/home/yuqing/fastdfs1

    组1的设置

    若本存储服务器支持多组,取消下面的注释

    group settings for group #2

    since v1.14

    when support multi-group, uncomment following section as neccessary

    #[group2]

    #group_name=group2

    #storage_server_port=23000

    #store_path_count=1

    #store_path0=/home/yuqing/fastdfs

    组2的设置

    若本存储服务器支持多组,取消下面的注释

    二、直接使用 web访问

    这个比较简单,只需要把web根目录指定到 fastdfs的存储目录就可以了

    三、web访问fastdfs 的几种思路

    3.1  只使用 组名

    适用于图片量大、group组多、每个group组都有备份

    访问地址类似于   picture.xxx.com/groupx/M00/……jpg

    只需要一个域名;

    上传图片后 将返回的值 直接+域名  保存为图片名 :picture.xxx.com/groupx/M00/……jpg

    前端使用一个nginx做反向代理+负载均衡  配置如下:

    upstream group1{

    server group1_storage1:80;

    server group1_storage2:80;

    }

    upstream group2{

    server group2_storage1:80;

    server group2_storage2:80;

    }

    location /group1/M00{

    proxy_pass http://group1;

    }

    location /group2/M00{

    proxy_pass http://group2;

    }

    注意:group1 和 group2 中 机器要正确配置 nginx.conf  storage.conf 和 mod_fastdfs.conf 文件

    nginx.conf中

    location /group1/M00 {

    root /home/yuqing/fastdfs/data;

    ngx_fastdfs_module;

    }

    特别注意  mod_fastdfs.conf文件中  这两项 组名、url是否包含group名

    group_name=

    url_have_group_name =

    3.2 只使用 域名 (已部署生产环境)

    适用于图片较少,每个group组都是单机跑,没有备份的情况

    访问地址类似于   picturex.xxx.com/M00/……jpg

    自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

    深知大多数软件测试工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

    因此收集整理了一份《2024年软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

    FastDFS之——Web访问 FastDFS 出现的问题及解决方案

    FastDFS之——Web访问 FastDFS 出现的问题及解决方案

    FastDFS之——Web访问 FastDFS 出现的问题及解决方案

    FastDFS之——Web访问 FastDFS 出现的问题及解决方案

    FastDFS之——Web访问 FastDFS 出现的问题及解决方案

    既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!

    由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

    如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)

    FastDFS之——Web访问 FastDFS 出现的问题及解决方案

    一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

    于   picturex.xxx.com/M00/……jpg

    自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

    深知大多数软件测试工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

    因此收集整理了一份《2024年软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

    [外链图片转存中…(img-G8Nd13Ok-1712868592545)]

    [外链图片转存中…(img-Ax8COCL7-1712868592545)]

    [外链图片转存中…(img-RxURlxGA-1712868592546)]

    [外链图片转存中…(img-wEsTPmXa-1712868592546)]

    [外链图片转存中…(img-2nO1BrMM-1712868592547)]

    既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!

    由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

    如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)

    [外链图片转存中…(img-Va0bFvYx-1712868592547)]

    一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]