前几天想要下载一个图片服务器的VM虚拟机,出了各种问题,特别恼火下载完成了百分之99闪退,顺便吐槽一下百度网盘的下载限速。
弄了两天愣是没下下来,没办法只有自己配了。参考了一些博客,经过不懈努力尝试,终于成功搭建了一个单机版的图片服务器。记录一下
关于FastFDS,Nginx服务器的详细概述可以参考 这里。
废话就不多说了
首先列出所有用到的资源
1、git (主要是下载下面用到GitHub中的资源)
2、libfastcommon(安装FastDFS之前要安装的依赖库)
3、fastdfs
4、openssl
5、zlib
6、pcre
7、nginx
8、C++ (这个可以直接安装了)
yum install -y gcc gcc-c++
9、fastdfs-nginx-module
cd ~
1)、安装git依赖的包 (在进行这一步时会有两次提示是否继续,按提示选择继续)
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel pcc perl-ExUtils-MakeMaker
wget https://github.com/git/git/archive/v2.11.0.tar.gz
tar zxvf git-2.11.0.tar.gz
cd git-2.11.0
make prefix=/usr/local/git all
make prefix=/usr/local/git install
whereis git
git --version
git config -global user:name "hiddenzzh"
git config -global user.email "[email protected]"
ssh-keygen -t ras -C "[email protected]"
vim ~/.ssh/id_rsa.pub
2、安装libfastcommon
1)、安装
git clone https://github.com/happyfish100/libfastcommon.git
遇到要输入账号密码得情况表示有可能要下载的文件不存在,或者是输入有误。我把module写成moudle了
2)、进入libfastcommon目录
cd libfastcommon
3)、编译libfastcommon
./make.sh
4)、安装
./make.sh install
1)、安装
git clone https://github.com/happyfish100/fastdfs.git
2)、进入到目录
cd FastDFS
3)、编译
./make.sh
4)、安装
./make.sh install
5)、修改配置文件
cd /etc/fdfs/
会有四个文件,找到下面三个文件
client.conf.sample
tracker.conf.sample
storage.conf.sample
每个复制一份到当前文件夹
cp client.conf.sample client.conf
cp tracker.conf.sample tracker.conf
cp storage.conf.sample storage.conf
在home下新建文件夹,名称随便取
cd /home
mkdir goodlymoon
cd goodlymoon
mkdir fastdfs
修改client.conf
vim client.conf
base_path=/home/goodlymoon/fastdfs
tracker_server=192.168.110.128:22122(你本机的ip地址,端口号默认)
修改tracker.conf
vim tracker.conf
base_path=/home/goodlymoon/fastdfs
修改storage.conf
vim storage.conf
base_path=/home/goodlymoon/fastdfs
store_path0=/home/goodlymoon/fastdfs (建议与bast_path一样)
tracker_server=192.168.110.128:22122
启动服务程序
启动tracker server
/usr/bin/fdfs_trackerd etc/fdfs/tracker.conf restart
启动storage server
/usr/bin/fdfs_storaged etc/fdfs/storage.conf restart
启动测试程序
上传文件测试:
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/goodlymoon/Pictures/9dd527cb97b81e12a9dee9719fab15df.jpg
重启了tracker和storage,再次上传图片成功
4、安装openssl
1)、安装
wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz
2)、进入到目录
cd openssl-1.0.2l/
3)、执行命令
./config
4)、编译
make
5)、安装
make install
5、安装zlib
1)、下载
wget http://www.zlib.net/zlib-1.2.11.tar.gz
2)、进入到目录
cd zlib-1.2.11
3)、执行命令
./configure
4)、编译
make
5)、安装
make install
6、安装pcre
1)、下载
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
2)、进入到目录
cd pcre-8.38
3)、执行命令
./configure
4)、编译
make
5)、安装
make install
7、安装nginx
1)、下载
wget http://nginx.org/download/nginx-1.13.6.tar.gz
2)、解压缩
tar -zxf nginx-1.13.6.tar.gz
3)、进入到目录
cd nginx-1.13.6
4)、执行命令
./configure
5)、编译
make
5)、安装
make install
安装成功之后,默认会在/usr/local 下创建nginx 目录
修改目录权限
chmod a+rwx -R /usr/local/nginx/logs/
chmod a+rwx -R /usr/local/nginx/
检测配置文件是否正确
/usr/local/nginx/sbin/nginx -t
结果为下面内容表示已安装完成
nginx: the configuration file /usr/local/nginx/conf/nginx.confsyntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test issuccessful
启动Nginx
/usr/local/nginx/sbin/nginx
浏览器输入localhost
8、安装fastdfs-nginx-module
1)、下载到
cd /home/goodlymoon/
git clone https://github.com/happyfish100/fastdfs-nginx-module.git
2)、解压缩后记录路径。
3)、进入到nginx安装包的目录
cd ~
cd nginx-1.13.6
4)、执行命令(根据fastdfs-nginx-module解压目录)
./configure --add-module=/home/goodlymoon/fastdfs-nginx-module/src
5)、编译
make
6)、安装
make install
最后来配置group
在nginx.conf里面的server{里面添加location /M00……},添加下面的几行:
在第一行加上 user root;
cd /usr/local/nginx/conf/
vim nginx.conf
user root; #user root; 加在第一行
location /M00 {
root /home/goodlymoon/fastdfs/data;
ngx_fastdfs_module;
}
创建/M00软连接
命令:
ln -s /home/goodlymoon/fastdfs/data /home/goodlymoon/fastdfs/data/M00
将/home/goodlymoon/fastdfs-nginx-module-master/src(位置看自己将解压到哪里)里面的mod_fastdfs.conf复制到/etc/fdfs/里面
cp /home/goodlymoon/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/
修改mod_fastdfs.conf(名称为创建好文件夹名称)
cd /etc/fdfs
vim mod_fastdfs.conf
tracker_server=192.168.110.132:22122
store_path0=/home/goodlymoon/fastdfs
将FastDFS配置目录下的2个文件复制到/etc/fdfs目录下:
cd ~
cp fastdfs/conf/http.conf /etc/fdfs/
cp fastdfs/conf/mime.types /etc/fdfs/
重新启动Nginx
启动命令:
/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx
到此安装过程结束。那访问url时是这样的
http://192.168.110.132/M00/00/00/wKhuhFnx3WuAXX2HAAJkga6kGsU204.jpg
参考博客 http://blog.csdn.net/jun2016425/article/details/53572088
安装nginx时遇到缺少pcre.h文件时的解决方法参考 http://blog.csdn.net/m0_38119579/article/details/78180314
安装nginx时遇到报错Error 127 的解决方法参考 http://jingpin.jikexueyuan.com/article/49805.html