Centos7 安装dfs和nginx
1. .安装 gcc
yum install -y gcc gcc-c++ z之前安装过就忽略
2.安装 perl
yum install -y perl
3.安装 libevent
yum install -y libevent
4.安装 libfastcommon
libfastcommon 没有 yum 源,通过上传的安装包进行编译与安装
cd /usr/local/libfastcommon-1.0.7/
./make.sh && ./make.sh install
libfastcommon 安装好后会在 /usr/lib64 目录下生成 libfastcommon.so 库文件
由于 FastDFS 程序引用 usr/lib 目录所以需要将 /usr/lib64 下的库文件拷贝至 /usr/lib 下
cp /usr/lib64/libfastcommon.so /usr/lib
5.安装 tracker
cd /usr/local/fastdfs-5.05/
./make.sh && ./make.sh install
安装成功将安装目录下的 conf 下的文件拷贝到 /etc/fdfs/ 下
cp conf/* /etc/fdfs/
6.配置和启动 tracker
切换到 /etc/fdfs 目录下
cd /etc/fdfs
修改 tracker.conf
vi tracker.conf
base_path = /home/fastdfs
http.server_port = 80
创建 /home/fastdfs 目录 --- 注意不是界面下的home, 是其他位置下的home
mkdir -p /home/fastdfs
启动 tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
PS:启动成功后,在 /home/fastdfs/ 目录下生成两个目录, 一个是数据,一个是日志
7.配置和启动 storage
切换到 /etc/fdfs 目录下
cd /etc/fdfs
修改
vi storage.conf
base_path = /home/fastdfs
store_path0 = /home/fdfs_storage
tracker_server = x.x.x.x:22122 (根据实际情况改)
http.server_port = 88
创建 /home/fdfs_storage 目录
mkdir -p /home/fdfs_storage
启动 storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
PS:启动成功后,在 /home/fdfs_storage/data 目录下生成一堆2个字母的目录
8.测试FastDFS上传文件
切换到 /etc/fdfs 目录下
cd /etc/fdfs
修改 client.conf
vi client.conf
base_path = /home/fastdfs
tracker_server = x.x.x.x:22122 (根据实际情况改)
拷贝一张图片 test.jpg 到Centos服务器上的 /tmp 目录下
进行上传测试
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /tmp/hh.jpg
正常情况下, 会他妈的出现 2 个 url 的 图片地址, 但是 没办法访问. 需要nginx...
9.FastDFS 和Nginx整合
解压fastdfs-nginx-module, 在他的src 目录下
修改config文件
vi config
将文件中的所有 /usr/local/ 路径改为 /usr/ 共3个
下面 注意..不是上面的 config 文件
复制当前目录下的 mod_fastdfs.conf 文件到 /etc/fdfs/ 目录下
cp mod_fastdfs.conf /etc/fdfs/
切换到 /etc/fdfs 目录,修改 mod_fastdfs.conf 文件
vi mod_fastdfs.conf
base_path=/home/fastdfs
tracker_server=x.x.x.x:22122(根据实际情况改)
url_have_group_name=true #url中包含group名称
store_path0=/home/fdfs_storage #指定文件存储路径(上面配置的store路径)
将 /usr/lib64 目录下的 libfdfsclient.so 文件拷贝至 /usr/lib 目录下
cp /usr/lib64/libfdfsclient.so /usr/lib
10.Nginx 的安装
安装nginx的依赖库:
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
创建 /var/temp/nginx/client 目录
mkdir -p /var/temp/nginx/client
切换到 nginx 解压的目录
cd /usr/local/nginx-1.8.0/
执行以下配置命令:
./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=/usr/local/fastdfs-nginx-module/src ----注意 这行命令,是你解压的 src 目录!!!
编译并安装
make && make install
PS:安装成功后查看生成的目录 cd /usr/local/nginx ll下 有 3个文件
创建 /usr/local/nginx/logs 目录
mkdir /usr/local/nginx/logs
切换到 /usr/local/nginx/conf/ 目录
cd /usr/local/nginx/conf/
修改 nginx.conf 文件
vi nginx.conf
修改
#pid logs/nginx.pid;
pid /usr/local/nginx/logs/nginx.pid;
在 server中 加 location~/group
server {
listen 80;
server_name 192.168.223.135;
#charset koi8-r;
#access_log logs/host.access.log main;
location ~/group([0-9]) {
root /home/fdfs_storage/data;
ngx_fastdfs_module;
}
location / {
root html;
index index.html index.htm;
}
切换到 /usr/local/nginx/sbin/ 目录
cd /usr/local/nginx/sbin/
启动 nginx
./nginx
11.FastDFS 和 Nginx 开机自启配置
编辑 /etc/rc.d/rc.local 文件,增加启动项
vi /etc/rc.d/rc.local
# fastdfs start
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
# nginx start
/usr/local/nginx/sbin/nginx
给rc.local 文件增加可执行的权限
chmod +x /etc/rc.d/rc.local