搭建FastDFS图片服务器(2)
目录
一、使用Nginx访问FastDFS
1、为什么使用Nginx访问?
2、安装fastdfs-nginx-module插件
2、1 解压
2、2 修改config
2、3 配置fastdfs-nginx-module与FastDFS关联配置文件
二、安装Nginx
1、安装Nginx
1、1安装nginx的依赖库
2、配置Nginx.conf
2、1修改nginx配置文件:
2、2部分代码替换为如下代码:
2、3启动nginx:
2、4可通过ps -ef | grep nginx查看nginx是否已启动成功
3、设置Nginx开机自启
3、1添加nginx.service文件
3、2文件内容如下
4、设置开机启动
一、使用Nginx访问FastDFS
1、为什么使用Nginx访问?
FastDFS通过Tracker服务器,将文件放在Storage服务器存储,但是同组存储服务器之间需要进入文件复制,有同步延迟的问题。
假设Tracker服务器将文件上传到了192.168.4.125,上传成功后文件ID已经返回给客户端。此时FastDFS存储集群机制会将这个文件同步到同组存储192.168.4.126,在文件还没有复制完成的情况下,客户端如果用这个文件ID在192.168.4.126上取文件,就会出现文件无法访问的错误。
而fastdfs-nginx-module可以重定向文件连接到文件上传时的源服务器取文件,避免客户端由于复制延迟导致的文件无法访问错误。
2、安装fastdfs-nginx-module插件
2、1 解压
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
2、2 修改config
1)进入src目录
cd fastdfs-nginx-module/src/
2)编辑config
vim config
使用以下底行命令:
:%s+/usr/local/+/usr/+g
将所有的/usr/local替换为 /usr,这个才是正确的目录:
2、3 配置fastdfs-nginx-module与FastDFS关联配置文件
复制 fastdfs-nginx-module 源码中的配置文件到/etc/fdfs 目录, 并修改
cp /usr/upload/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
vim /etc/fdfs/mod_fastdfs.conf
修改以下配置:
connect_timeout=10 # 客户端访问文件连接超时时长(单位:秒)
tracker_server=192.168.204.158:22122 # tracker服务IP和端口
url_have_group_name=true # 访问链接前缀加上组名
store_path0=/powershop/storage # 文件存储路径
复制 FastDFS 的部分配置文件到/etc/fdfs 目录,否则不支持nginx
cd /usr/upload/FastDFS/conf/
cp http.conf mime.types /etc/fdfs/
二、安装Nginx
1、安装Nginx
1、1安装nginx的依赖库
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
1、2解压安装包
tar -zxvf nginx-1.10.0.tar.gz
1、3配置nginx安装包,并指定fastdfs-nginx-model
cd nginx-1.10.0
./configure --prefix=/usr/local/nginx --add-module=/usr/upload/fastdfs-nginx-module/src
注意:在执行./configure配置nginx参数的时候,需要将fastdfs-nginx-moudle源码作为模块编译进去。
1、4编译并安装
make && make install
2、配置Nginx.conf
2、1修改nginx配置文件:
vim /usr/java/nginx/conf/nginx.conf
2、2部分代码替换为如下代码:
# 监听域名中带有group的,交给FastDFS模块处理
location ~/group([0-9])/ {
ngx_fastdfs_module;#获得fastdfs中图片的存在路径 /usr/storage/group/0/atm.jpg
}
2、3启动nginx:
./nginx # 启动nginx
./nginx -s stop # 停止nginx
./nginx -s reload # 重新载入配置文件
2、4可通过ps -ef | grep nginx查看nginx是否已启动成功
3、设置Nginx开机自启
3、1添加nginx.service文件
vim /lib/systemd/system/nginx.service
3、2文件内容如下
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
建议这段直接复制粘贴
4、设置开机启动
systemctl daemon-reload #重新加载服务配置
systemctl enable nginx.service #设置为开机启动
systemctl start nginx.service #启动服务
systemctl status nginx.service #查看服务状态
systemctl stop nginx.service #停止服务
设置开机前记得先停止之前的nginx服务。
好了,这总算没烂尾,到此自己的一个图片服务器就搭建好了,动手能力强的小伙伴快去自己搭建吧!
还没有评论,来说两句吧...