下面我讲一种非常规的安装 fastDFS的方法
首先我是先安装了 Nginx 并且已经在用了,然后在其基础上面进行扩展
1、nginx 的常用命令
#检查配置文件是否配置成功 ,nginx 的配置文件对格式要求相当严格,不建议用其他编辑器打开 ,最好直接使用 vi vim 编辑器然后手打 ,尽量少复制避免出现编码不兼容问题
nginx -t
#关闭nginx 前提是nginx 的安装路径在 /usr/local/nginx 否则 前面就要带上你的安装路径
nginx -s stop
#重新加载配置文件
nginx -s reload
#启动nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
接下来是安装fastDFS
1、软件下载:
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz
wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz
wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
wget http://nginx.org/download/nginx-1.8.0.tar.gz
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz
2、libfastcommon安装:
cp V1.0.7.tar.gz /usr/local/
tar -zxvf V1.0.7.tar.gz
cd libfastcommon-1.0.7
./make.sh
./make.sh install
libfastcommon.so默认安装到了/usr/lib64/libfastcommon.so,而FastDFS主程序设置的lib目录是/usr/local/lib,所以设置软连接
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
3、安装FastDFS:
(1)tar -zxvf V5.05.tar.gz -C /usr/local
cd /usr/local/fastdfs-5.05/
./make.sh
./make.sh install
cd /etc/fdfs
(2)配置文件设置:
cp tracker.conf.sample tracker.conf
cp storage.conf.sample storage.conf
cp client.conf.sample client.conf
详细设置见附件
tracker.conf配置中要修改的几个项:
bind_addr=202.98.27.31
port=22122
http.server_port=8080
storage.conf配置中要修改的几个项:
group_name=group1
bind_addr=202.98.27.31
port=23000
base_path=/usrdata/fastdfs
store_path0=/usrdata/fastdfs
tracker_server=202.98.27.31:22122
http.server_port=8888
(3)启动
启动tracker storage.conf
fdfs_trackerd /etc/fdfs/tracker.conf
fdfs_storaged /etc/fdfs/storage.conf
4、安装nginx插件:
(1)安装
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
cd fastdfs-nginx-module/src/
(2)config文件修改:
vi config
修改如下配置,我这里原来是
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
改成
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
这个是很重要的,不然在nginx编译的时候会报错的,我看网上很多在安装nginx的fastdfs的插件报错,都是这个原因,而不是版本不匹配。
cp mod_fastdfs.conf /etc/fdfs
修改配置
group_name=group1
tracker_server=202.98.27.31:22122
store_path0=/usrdata/fastdfs
base_path=/usrdata/fastdfs
url_have_group_name = true
2)、配置文件服务器的软连接
ln -s /usrdata/fastdfs/data /usrdata/fastdfs/data/M00 (配置文件中stoage存放数据的路径)
同时将以下两个文件复制到/etc/fdfs/
cp /usr/local/fastdfs-5.05/http.conf /etc/fdfs/
cp /usr/local/fastdfs-5.05/mime.types /etc/fdfs/
5、nginx安装:
在每个Storage服务器上安装Nginx
(1)pcre安装:
http://nginx.org/download/nginx-1.12.2.tar.gz
nginx 安全版本
tar -zxvf pcre-8.36.tar.gz
cd pcre-8.36
./configure
make && make install
cd ../
ln -s /usr/local/lib/libpcre.so.1 /lib64/
----------------------------------------------------------------------------------------------------
如果你跟我一样,都是事先已经安装了 nginx 后面再去安装fastDFS 的话 ,那就如下
首先 需要用到 nginx ./configure 命令 如果你之前安装的时候没有安装源码
使用 nginx -v 查看你安装的版本
那么你就需要下载一个同版本的nginx然后解压,将这几个文件夹拷贝到你的安装目录下
然后就可以开心的用 configure 安装插件了
使用nginx -V 查看之前安装的插件
然后将 --add-module=../ngx_pagespeed-master 加到原来的安装命令后面
然后 执行
# ./configure (之前安装的命令)--add-module=/usr/local/fastdfs-nginx-module/src
# make
然后会在你的nginx 安装目录下面生成一个 objs的文件夹 里面会有一个 nginx 的启动文件
然后关闭你的 nginx
# nginx -s stop
然后将该文件复制到 你的 nginx sbin 目录下 最好先将原来的文件重命名备份
然后 执行 nginx -t
如果出现没有授权 则需要将将nginx 配置文件的第一行 修改为 user root; 修改用户
如果出现nginx_2: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
则需要 ln -s /usr/local/lib/libpcre.so.1 /lib64/ 将该文件做一下软连接
如果出现 nginx_2: error while loading shared libraries: libpcre.so.0: cannot open shared object file: No such file or directory
也是一样 ln -s /usr/local/lib/libpcre.so.0 /lib64/
然后基本上就没有啥大问题了,就可以启动了
然后给你的nginx 配置文件中加上
location /group1/M00{
root /usrdata/fastdfs/data;
ngx_fastdfs_module;
}
然后启动就ok了
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
nginx安装第三方模块的方法
这篇文章主要介绍了nginx安装第三方模块的方法,包含在未安装nginx的情况下安装nginx第三方模块和在已安装nginx情况下安装nginx第三方模块,需要的朋友可以参考下
nginx文件非常小但是性能非常的高效,这方面完胜apache,nginx文件小的一个原因之一是nginx自带的功能相对较少,好在nginx允许第三方模块,第三方模块使得nginx越发的强大. 在安装模块方面,nginx显得没有apache安装模块方便,当然也没有php安装扩展方便.在原生的nginx,他不可以动态加载模块,所以当你安装第三方模块的时候需要覆盖nginx文件.接下来看看如何安装nginx第三模块吧.
nginx第三方模块安装方法:
复制代码 代码如下:
./configure --prefix=/你的安装目录 --add-module=/第三方模块目录
以安装pagespeed模块实例
在未安装nginx的情况下安装nginx第三方模块
复制代码 代码如下:
# ./configure --prefix=/usr/local/nginx-1.4.1 \
--with-http_stub_status_module \
--with-http_ssl_module --with-http_realip_module \
--with-http_image_filter_module \
--add-module=../ngx_pagespeed-master --add-module=/第三方模块目录
# make
# make isntall
# /usr/local/nginx-1.4.1/sbin/nginx
在已安装nginx情况下安装nginx模块
复制代码 代码如下:
# ./configure --prefix=/usr/local/nginx-1.4.1 \
--with-http_stub_status_module \
--with-http_ssl_module --with-http_realip_module \
--with-http_image_filter_module \
--add-module=../ngx_pagespeed-master
# make
# /usr/local/nginx-1.4.1/sbin/nginx -s stop
# cp objs/nginx /usr/local/nginx/sbin/nginx
# /usr/local/nginx-1.4.1/sbin/nginx
相比之下仅仅多了一步覆盖nginx文件.
总结,安装nginx安装第三方模块实际上是使用–add-module重新安装一次nginx,不要make install而是直接把编译目录下objs/nginx文件直接覆盖老的nginx文件.如果你需要安装多个nginx第三方模块,你只需要多指定几个相应的–add-module即可.
备注:重新编译的时候,记得一定要把以前编译过的模块一同加到configure参数里面.
nginx提供了非常多的nginx第三方模块提供安装,地址http://wiki.nginx.org/3rdPartyModules