前期准备

1.安装依赖包

#  新装的ubuntu缺少gcc编译,需要先安装这个
sudo apt-get install build-essential 1.解压缩 libfastcommon-master.zip文件
2.进入到libfastcommon-master的目录中
3.执行 ./make.sh
4.执行 sudo ./make.sh install 1.解压缩 fastdfs-master.zip文件
2.进入到fastdfs-master的目录中
3.执行 ./make.sh
4.执行 sudo ./make.sh install( 安装完成后在/usr/bin/目录下有fdfs_trackerd文件,后续 启动的时候 要用 )

配置跟踪服务器tracker

1. sudo cp /etc/fdfs/tracker.conf.sample  /etc/fdfs/tracker.conf
2.在 /home/python/目录创建目录 fastdfs/tracker
sudo mkdir -p /home/python/fastdfs/tracker
3.编辑/etc/fdfs/tracker.conf配置文件
sudo vim /etc/fdfs/tracker.conf
4.修改内容
bash_path=/home/python/fastdfs/tracker

配置存储服务器storage

1. sudo cp /etc/fdfs/storage.conf.sample  /etc/fdfs/storage.conf
2.在 /home/python/fastdfs/目录创建目录 storage
mkdir -p /home/python/fastdfs/storage
3.编辑/etc/fdfs/storage.conf配置文件
sudo vim /etc/fdfs/storage.conf
4.修改内容
base_path=/home/python/fastdfs/storage
store_path0=/home/python/fastdfs/storage
tracker_server=自己ubuntu虚拟机的ip地址:22122

启动

sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf

测试是否安装成功

1. sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
2.编辑/etc/fdfs/client.conf配置文件
sudo vim /etc/fdfs/client.conf
3.修改内容
base_path=/home/python/fastdfs/tracker
tracker_server=自己ubuntu虚拟机的ip地址:22122
4.上传文件测试
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf ~/Desktop/touxiang.jpg(要上传的文件)
如果返回类似group1/M00/00/00/rBCwA1_SVWqAEdUkAABA5jaIBAY570.jpg的文件id说明文件上传成功
此时我们上传的图片 数据就 保存在之前我们创建的storage目录下的data目录下 /home/python/fastdfs/storage/data

安装nginx及fastdfs-nginx-module

1.安装nginx之前需要提前安装一些依赖包
#openssl安装
sudo apt-get install openssl libssl-dev
#pcre安装
sudo apt-get install libpcre3 libpcre3-dev
#zlib安装
sudo apt-get install zlib1g-dev
1.解压缩 nginx-1.8.1.tat.gz
2.解压缩 fastdfs-nginx-module-master.zip
3.进入nginx-1.8.1目录
4.执行
sudo ./configure --prefix=/usr/local/nginx/ --add-module=fastdfs-nginx-module-master解压后的目录的绝对路径/src
sudo make
sudo make install # 可能会出现以下错误
cc1: all warnings being treated as errors
objs/Makefile:440: recipe for target 'objs/src/core/ngx_murmurhash.o' failed
make[1]: *** [objs/src/core/ngx_murmurhash.o] Error 1
make[1]: Leaving directory '/home/mac/Desktop/FastDFS/nginx-1.8.1'
Makefile:12: recipe for target 'install' failed # 解决办法
进入到你ngxin解压目录下的objs目录中找到Makefile
我自己的在: cd ~/Desktop/FastDFS/nginx-1.8.1/objs/
sudo vim Makefile
修改第三行CFLAGS的参数
将 --Werror参数删除掉即可 5.sudo cp ~/Desktop/FastDFS/fastdfs-nginx-module-master/mod_fastdfs.conf /etc/fdfs/mod_fastdfs.conf
6.sudo vim /etc/fdfs/mod_fastdfs.conf
7.修改 内容为
connect_timeout=10
tracker_server=自己ubuntu虚拟机的ip地址:22122
url_have_group_name=true
8.sudo cp 解压缩的fastdfs-master目录下conf目录下的http.conf /etc/fdfs/http.conf
9.sudo cp 解压缩的fastdfs-master目录下conf目录下的mime.types /etc/fdfs/mime.types
10.sudo vim /usr/local/nginx/conf/nginx.conf
添加内容为:
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;
}
}
#启动 nginx
cd /usr/local/nginx/sbin
sudo ./nginx # 浏览器上访问
127.0.0.1:8888 #可以看到nginx启动成功的页面
# 再访问我们之前上传的图片返回的一串信息,当看到图片成功显示 后说明就没有问题
http://127.0.0.1:8888/group1/M00/00/00/rBCwA1_SfPGAEj9CAABA5jaIBAY052.jpg

python客户端上传测试

# 在安装个python与fdfs交互的包,直接将包放到django目录下
pip install fdfs_client-py-master.zip
# 使用
>>> from fdfs_client.client import Fdfs_client
>>> client = Fdfs_client('/etc/fdfs/client.conf')
>>> ret = client.upload_by_filename('test')
>>> ret
{'Group name':'group1','Status':'Upload successed.', 'Remote file_id':'group1/M00/00/00/
wKjzh0_xaR63RExnAAAaDqbNk5E1398.py','Uploaded size':'6.0KB','Local file name':'test'
, 'Storage IP':'192.168.243.133'}

ubuntu18.04下nginx配合fastdfs使用的安装和配置的更多相关文章

  1. Ubuntu18.04下MySQL8.0和Navicat15的安装与使用

    目录 一.MySQL8.0安装 二.Navicat安装并与MySQL连接 一.MySQL8.0安装 注意:若直接 sudo apt install mysql-server,你会发现安装后的版本是5. ...

  2. Ubuntu-18.04 下修改root用户密码,安装SSH服务,允许root用户远程登录,安装vsftp服务器

    修改root用户密码 打开终端,输入 sudo passwd root 指令: 安装SSH服务 ssh默认端口号是22,可以在/etc/ssh/sshd_config文件中修改 查看服务器否开启:ne ...

  3. ubuntu14.04下arm-linux-gcc 4.5.1的安装与配置

    使用的是友善之臂mini6410自带光盘中的. 1.对新版本arm-linux-gcc-5.4.1进行解压(注意,下面的C是大写的) tar zxvf arm-linux-gcc-4.5.1-v6-v ...

  4. Ubuntu18.04下的音频录制和编辑软件Ardour及QjackCtl(jackd gui)

    Ardour 是一个Linux和OSX下的多音轨录制和数字音频编辑软件. 需要配合ALSA或者JACK总线使用. 快速入门 http://brunoruviaro.github.io/ardour4- ...

  5. Ubuntu18.04下安装搜狗输入法

    Ubuntu18.04下安装搜狗输入法 第一步:安装 fcitx输入框架 sudo apt-get install fcitx 第二步:在官网下载 Linux 版本搜狗输入法 https://piny ...

  6. Ubuntu18.04下给PyCharm创建快捷方式

    Ubuntu18.04下给PyCharm创建快捷方式 该方法 WebStorm.PyCharm.Clion 等都适用. 步骤 终端输入: sudo gedit /usr/share/applicati ...

  7. ubuntu18.04 下利用conda安装opencv3

    ubuntu18.04 下利用conda安装opencv3 安装opencv3 conda install -c https://conda.anaconda.org/menpo opencv3 出现 ...

  8. ubuntu18.04下安装mysql后无法用mysqlworkbench访问

    问题描述:我在ubuntu18.04下执行以下命令安装mysql时遇到了mysqlworkbench无法连接root用户的问题.ubuntu18.04下默认安装mysql时是5.7版本的,但是5.7版 ...

  9. Ubuntu18.04下安装MySQL

    Ubuntu上安装MySQL非常简单只需要几条命令就可以完成. 1. sudo apt-get install mysql-server 2. apt-get isntall mysql-client ...

  10. Ubuntu18.04下搭建LAMP环境

    一.Apache2 web 服务器的安装 : 可以先更新一下服务器 1.sudo apt-get update             # 获取最新资源包 2.sudo apt-get upgrade ...

随机推荐

  1. 【转帖】在ECS上配置skywalking-nginx-lua

    https://help.aliyun.com/document_detail/197660.html 此处以在CentOS 7.0上的操作为例. 配置Lua运行环境. 安装工具库.   yum in ...

  2. TCP内核参数与Nginx配置的简单测试

    背景 昨天晚上整理了下几个TCP内核的参数. 学习到了一点内核参数的影响. 但是因为时间比较晚了没有继续钻研与nginx的关系 今天想着继续研究一下TCP的部分参数与nginx的关系 每个系统都不一样 ...

  3. 一个简单的监控java进程获取日志的办法

    公司里面一个长时间运行的环境会出现问题, 这边简单写了一个脚本自动获取日志信息 脚本如下 注意 我的path 其实就是复用的 我们应用里面的jdk  剩下的就非常简单了. 每个日志都自动打包 并且移除 ...

  4. sed 删除包含某字符的一行 给包含某字符的一行添加 逗号的简单方法

    今天处理环境折腾死了 方法: #给包含 configdata 的一行 添加 逗号结尾 find . -name "*.json" |xargs sed -i '/configdat ...

  5. Mark 一下 Redisson 可能需要升级版本

    貌似有bug 我们高并发的情况下貌似遇到了 https://github.com/redisson/redisson/issues/2299

  6. error: Your local changes to the following files would be overwritten by merge

    拉取代码出现 error: Your local changes to the following files would be overwritten by merge 解决方案 你团队其他成员修改 ...

  7. Spring框架源码分析

    目录 Spring核心思想 Spring源码编译 自定义实现Spring框架IOC与DI Spring源码Ioc核心模块分析 BeanDefinition整体介绍 FactoryBean接口的使用 B ...

  8. linux下面权限的含义以及修改

    linux中的权限 前言 数字权限 三位数字权限 读(r) 写(w) 执行(x) 无权限(-) 三位数字权限的转换 如何设置权限 最高位的含义 四位数字权限 SUID SGID SBIT 四位数字权限 ...

  9. 【一】AI Studio 项目详解【(一)VisualDL工具、环境使用说明、脚本任务、图形化任务、在线部署及预测】PARL

    相关文章 [一]-环境配置+python入门教学 [二]-Parl基础命令 [三]-Notebook.&pdb.ipdb 调试 [四]-强化学习入门简介 [五]-Sarsa&Qlear ...

  10. C/C++ 通过Socket 传输结构体

    本质上socket无法传输结构体,我们只有将结构体装换为字节数组,或者是字符串格式来传输,到了服务端在强制类型转换一下即可,下面的代码分别提供原生写法与通过boost的实现两种,直接改改,可用于收集目 ...