FastDFS与Nginx环境配置
分为两部分,
FastDFS的依赖&本体安装配置.
Nginx的安装配置,以及FastDFS支持相关设置.(Nginx环境依赖另篇有写)
一. 安装fastdfs.
1. git下载zip包, 解压进入
https://github.com/happyfish100/libfastcommon
https://github.com/happyfish100/fastdfs
2. 安装依赖包libfastcommon, 和fastdfs包, 安装方法相同.
cd 进文件夹
./make.sh sudo ./make.sh install
3.修改配置参数
安装完之后, 直接cd 进入/etc/fdfs/
cp 作者提供的设置样本,
sudo cp ./tracker.conf.sample ./tracker.conf sudo cp ./storage.conf.sample ./storage.conf sudo cp ./client.conf.sample ./client.conf
修改相应参数
修改tracker的文件位置,例如:/home/fastdfs/tracker ,bind_address不设置时,绑定本机地址
sudo vim ./tracker.conf
base_path=/home/fastdfs/tracker
修改storage的文件位置及上面tracker服务所在的外网地址, 例如192.168.0.1:22122
sudo vim ./storage.conf
base_path=/home/fastdfa/storage
tracker_server=192.168.0.1:22122
修改client文件位置,对应的tracker地址
base_path=/home/python/fastdfs/tracker
tracker_server=192.168.0.1:22122
4. 启动服务
sudo /usr/bin/fdfs_tracked /etc/fdfs/tracker.conf sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
5. 查询并上传文件以测试服务
ps aux|grep fdfs fdfs_upload_file /etc/fdfs/client.conf 文件名
有返回文件id则服务正常
"group1/M00/00/00/wKgBA12En06AU7VbAAHew_W99e0827.jpg"
二. 安装nginx(依赖PCRE,zlib,OpenSSL库)
1. 下载nginx包, 以及nginx的fastdfs扩展包.
http://nginx.org/en/download.html
https://github.com/happyfish100/fastdfs-nginx-module
2. 增加nginx安装前缀, 添加fastdfs支持
cd 进nginx解压包
前置命令格式
sudo ./configure --prefix=[nginx所要安装的绝对路径]
--user=用户名 \
--group=组 \
--with-包名1 \
--with-包名2 \
--add-module=[指向 增加的扩展包的绝对路径内的src源代码文件夹]
!#无限制需要则不指定user&group, 设置后用户不匹配则无法启动服务[emerg] getpwnam("nginx") failed
包则根据自身需要追加
例:
sudo ./configure --prefix=/usr/local/nginx/ --add-module=/home/jrri/Downloads/fastdfs-nginx-module-master/src
安装:
sudo make
sudo make install
!#如make过程中出现错误
objs/Makefile:440: recipe for target 'objs/src/core/ngx_murmurhash.o' failed
cd 进 ./objs内修改Makefile,将gcc参数中的-Werror删掉即可.
3. nginx相关配置
(1)http.conf&mime.types(之前fastdfs解压包内conf目录内)
fastdfs-master内目录conf内http.conf和mime.types到fdfs配置目录
sudo cp 下载目录/fastdfs-master/http.conf /etc/fdfs/http.conf sudo cp 下载目录/fastdfs-master/mime.types /etc/fdfs/mime.types
并在http内添加:
server { listen 8888; server_name localhost; location ~/group[0-9]/ { ngx_fastdfs_module; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
(2)mod_fastdfs配置(解压包module目录下)
fastdfs-nginx-module-master内cp目录src内mod_fastdfs.conf到fdfs配置目录
sudo cp 下载目录/fastdfs-nginx-module-master/mod_fastdfs.conf /etc/fdfs/mod_fastdfs.conf
并更改:
connect_timeout=10 tracker_server=tracker服务所在的外网地址:22122 # 例: tracker_server=192.168.0.1:22122 url_have_group_name=true store_path0=/home/python/fastdfs/storage
4. 启动nginx服务器
# 启动: root执行nginx下sbin目录内的nginx可执行文件.
sudo /usr/local/nginx/sbin/nginx
# 关闭: 可执行文件_ -s stop
sudo /usr/local/nginx/sbin/nginx -s stop
## 与Python交互需要另行配置