项目总体环境搭建
1.安装gcc环境(编译c环境)
yum install gcc-c++
2.安装libebvent环境(fastdfs环境)
yum -y install libevent
3.安装perl环境(编译c文件环境)
./
4.安装libfastcommon环境(fastdfs环境)
将提供的压缩包所有上传,首先解压libfastcommonV1.0.7.tar
tar -zxvf libfastcommonV1.0.7.tar.gz
cd libfastcommon-1.0.7/
./make.sh
./make.sh install
ibfastcommon安装好后会自动将库文件拷贝至/usr/lib64下,因为FastDFS程序引用usr/lib目录因此须要将/usr/lib64下的库文件拷贝至/usr/lib下
cp /usr/lib64/libfastcommon.so /usr/lib
tracker编译安装
1.解压FastDFS
tar -zxf FastDFS_v5.05.tar.gz
2.编译FastDFS
cd FastDFS
./make.sh
./make.sh install
3.安装成功后,将FastDFS下的conf文件下的全部文件复制到/etc/fdfs/下
cp -r conf/* /etc/fdfs/
4.配置tracker
cd /etc/fdfs/
vi tracker.conf
将base_path=/home/yuqing/FastDFS改成base_path=/home/fastdfs(能够经过命令符去查找,命令符:/base_path)
保存退出
5.建立fastdfs目录
mkdir /home/fastdfs
6.启动tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart(可能须要两遍,不清楚缘由)
7.设置开机自启
vi /etc/rc.d/rc.local
将命令添加到文件里面:/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
storage编译安装(因为单机安装,因此省略编译和环境安装,若是存储文件的跟客户端不在同一台机器则须要按照安装tracker同样的环境步骤安装)
1.配置storage
cd /etc/fdfs/
vi storage.conf
修改如下配置
group_name=group1
base_path=/home/yuqing/FastDFS改成:base_path=/home/fastdfs
store_path0=/home/yuqing/FastDFS改成:store_path0=/home/fastdfs/fdfs_storage
#若是有多个挂载磁盘则定义多个store_path,以下
#store_path1=.....
#store_path2=......
tracker_server=192.168.101.3:22122 #配置tracker服务器:IP
#若是有多个则配置多个tracker
tracker_server=192.168.101.4:22122
2.建立数据存储目录
mkdir /home/fastdfs/fdfs_storage
3.启动storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart(可能须要两遍,不清楚缘由)
4.设置开机自启
vi /etc/rc.d/rc.local
将命令添加到文件里面:/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
总体完成,能够经过内部上传测试,看返回结果
1.修改上传客户端配置
vi /etc/fdfs/client.conf
修改如下配置
base_path=/home/fastdfs
tracker_server=你的ip:22122
2.上传命令
命令使用格式:
/usr/bin/fdfs_test 客户端配置文件地址 upload 上传文件
如:/usr/bin/fdfs_test /etc/fdfs/client.conf upload /root/FastDFS/conf/anti-steal.jpg
因为没有和nginx整合,因此没法使用http下载,也没法查看
配置fastdfs-nginx-module
1.解压fastdfs-nginx-module
tar -zxf fastdfs-nginx-module_v1.16.tar.gz
2.配置fastdfs-nginx-module
cd fastdfs-nginx-module/src
vi config
将文件中的/usr/local/路径改成/usr/(两个都改)
将mod_fastdfs.conf复制到/etc/fdfs/下
cp mod_fastdfs.conf /etc/fdfs/
修改etc/fdfs/下的mod_fastdfs.conf
vi mod_fastdfs.conf
修改mod_FastDFS.conf的如下内容:
base_path=/home/fastdfs
tracker_server=你的ip:22122
#tracker_server=你的ip:22122(多个tracker配置多行)
url_have_group_name=true #url中包含group名称
store_path0=/home/fastdfs/fdfs_storage #指定文件存储路径
将libfdfsclient.so拷贝至/usr/lib下
cp /usr/lib64/libfdfsclient.so /usr/lib/
建立nginx/client目录
mkdir -p /var/temp/nginx/client
nginx整合
storage上安装nginx
1.解压nginx
tar -zxf nginx-1.8.0.tar.gz
2.安装nginx环境
gcc环境(编译环境,上面已经安装):yum install gcc-c++
pcre环境(perl库,nginx的http模块使用pcre来解析正则表达式):yum install -y pcre pcre-devel
zlib环境(提供多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip):yum install -y zlib zlib-devel
openssl环境(算法和安全,https使用):yum install -y openssl openssl-devel
3.编译nginx
cd /root/nginx-1.8.1
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/root/fastdfs-nginx-module/src(fastdfs专有)
make
make install
4.建立编译连接
ln -s /usr/include/fast* /usr/local/include/
缘由:编译安装nginx的fastdfs插件的头文件没有找到,因为编译nginx时候系统会到/usr/local/include,而编译安装fastdfs-nginx-module时则默认保存在了/usr/include目录。
修复:ln -s /usr/include/fast* /usr/local/include/
5.修改nginx配置
编译完成后,会自动将nginx安装到/usr/local/nginx
cd /usr/local/nginx/conf
vi nginx.conf
添加一个server
server {
listen 80;
server_name 本机;
location /group1/M00/ {
ngx_fastdfs_module;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
配置说明:
说明:
server_name指定本机ip
location /group1/M00/:group1为nginx 服务FastDFS的分组名称,M00是FastDFS自动生成编号,对应store_path0=/home/FastDFS/fdfs_storage,若是FastDFS定义store_path1,这里就是M01
进入到 cd /usr/local/nginx/sbin
6.启动nginx
cd /usr/local/nginx/sbin/
./nginx
7.查看进程: ps aux|grep nginx
8.关闭nginx
./nginx -s stop
9.刷新配置
./nginx -s reload
说明:
若是重启服务器会发现没法启动nginx,报错找不到某个文件
解决:mkdir /var/run/nginx(偷懒方法,不治本,下次重启依然会报错)
而后再运行nginx
html