1.安装fastdfs依赖包
解压 libfastcommon-master.zip
进入解压包
执行 ./make.sh
执行 sudo ./make.sh install
2.安装fastdfs
步骤和上面一样
3.配置跟踪服务器tracker
首先copy 系统文件 sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
在/home/python/目录中创建目录 fastdfs/tracker
mkdir -p /home/python/fastdfs/tracker
之后就是编辑/etc/fdfs/tracker.conf配置文件:sudo vi /etc/fdfs/tracker.conf
修改bath_path = 上面创建的目录
4.配置存储服务器storage
首先copy系统文件 sudo cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
之后创建目录 mkdir -p /home/python/fastdfs/storage
编辑配置文件:sudo vi /etc/fdfs/storage.conf
修改 bath_path = 上面创建的目录
store_path0 = 上面创建的目录
tracker_server = 自己虚拟机的ip地址L:22122
5.启动tracker和storage
sudo service fdfs_trackerd start
sudo service fdfs_storaged strat
6.测试是否安装成功
sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
修改上面的文件:
base_path = /home/python/fastdfs/tracker
tracker_server = 自己虚拟机的ip地址:22122
fdfs_uoload_file /etc/fdfs/client.conf + 要上传的文件
7.安装nginx
解压nginx包
解压fastdfs-nginx-module-master.zip
进入nginx包内
执行:sudo ./cpnfigure --prefix=/usr/loacl/nginx/ --add-module=fastdfs-nginx-module-master 解压后的目录的绝对路径/src
sudo make
sudo make install
sudo cp fastdfs-nginx-module解压后的目录中src下的mod_fastdfs.conf /etc/fdfs/mod_fastds.conf
sudo vi /etc/fdfs/mod_fastdfs.conf
修改内容:
connect_timeout = 10
tracker_server = 自己虚拟机的ip地址:22122
url_have_group_name = true
store_path0=/home/python/fastdfs/storage
sudo cp 解压缩后的fastdfs目录中的http.conf /etc/fdfs/http.conf
sudo cp 解压缩后的fastdfs-master目录中的mime.types /etc/fdfs/mime.types
sudo vi /usr/local/nginx/conf/nginx.conf
在http部分中添加配置信息如下:
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即可 sudo ./nginx
8.使用python客户端上传
首先安装一个包 fdfs_client-py-master.zip
pip install fdfs_client-py-master.zip
修改三个文件的tracker_server=自己虚拟机的ip地址:22122
三个文件分别为 client.conf mod_fastdfs.conf storage.conf
重启tracker和storage nginx
9.用python与fdfs交互
创建utils/fdfs/storage.py
放入client.conf 修改bath_pase tracker_server
在storage.py放如下内容:
自定义文件存储类
from django.core.files.storage import Storage
from django.conf import settings
from fdfs_client.client import Fdfs_client
class FDFSStorage(Storage):
‘’‘fast dfs文件存储类’’’
def init(self, client_conf=None, base_url=None):
‘’‘初始化’’’
if client_conf is None:
client_conf = settings.FDFS_CLIENT_CONF
self.client_conf = client_conf
if base_url is None:
base_url = settings.FDFS_URL
self.base_url = base_url
def _open(self, name, mode='rb'):
'''打开文件时使用'''
pass
def _save(self, name, content):
# name 你选择上传文件的名字
# content 包含你上传文件内容的File对象
# 创建一个fdfs_client对象
client = Fdfs_client(self.client_conf)
# 上传文件到fsat_fdfs系统
res = client.upload_by_buffer(content.read())
if res.get('Status') != 'Upload successed.':
# 上传失败
raise Exception('上传文件到fast_fdfs失败')
filename = res.get('Remote file_id')
return filename
def exists(self, name):
return False
def url(self, name):
'''返回访问文件'''
return self.base_url + name
9 在配置setting
设置django的文件存储类
DEFAULT_FILE_STORAGE = ‘utils.fdfs.storage.FDFSStorage’
设置fdfs使用的client.conf文件路径
FDFS_CLIENT_CONF = ‘./utils/fdfs/client.conf’
设置fdfs存储服务器上nginx的IP端口号
FDFS_URL = ‘http://192.168.50.134:8888/’
connect_timeout = 10
tracker_server = 自己虚拟机的ip地址:22122
url_have_group_name = true
store_path0=/home/python/fastdfs/storage
sudo cp 解压缩后的fastdfs目录中的http.conf /etc/fdfs/http.conf
sudo cp 解压缩后的fastdfs-master目录中的mime.types /etc/fdfs/mime.types
sudo vi /usr/local/nginx/conf/nginx.conf
在http部分中添加配置信息如下:
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即可 sudo ./nginx
8.使用python客户端上传
首先安装一个包 fdfs_client-py-master.zip
pip install fdfs_client-py-master.zip
修改三个文件的tracker_server=自己虚拟机的ip地址:22122
三个文件分别为 client.conf mod_fastdfs.conf storage.conf
重启tracker和storage nginx
9.用python与fdfs交互
创建utils/fdfs/storage.py
放入client.conf 修改bath_pase tracker_server
在storage.py放如下内容:
自定义文件存储类
from django.core.files.storage import Storage
from django.conf import settings
from fdfs_client.client import Fdfs_client
class FDFSStorage(Storage):
‘’‘fast dfs文件存储类’’’
def init(self, client_conf=None, base_url=None):
‘’‘初始化’’’
if client_conf is None:
client_conf = settings.FDFS_CLIENT_CONF
self.client_conf = client_conf
if base_url is None:
base_url = settings.FDFS_URL
self.base_url = base_url
def _open(self, name, mode='rb'):
'''打开文件时使用'''
pass
def _save(self, name, content):
# name 你选择上传文件的名字
# content 包含你上传文件内容的File对象
# 创建一个fdfs_client对象
client = Fdfs_client(self.client_conf)
# 上传文件到fsat_fdfs系统
res = client.upload_by_buffer(content.read())
if res.get('Status') != 'Upload successed.':
# 上传失败
raise Exception('上传文件到fast_fdfs失败')
filename = res.get('Remote file_id')
return filename
def exists(self, name):
return False
def url(self, name):
'''返回访问文件'''
return self.base_url + name
9 在配置setting
设置django的文件存储类
DEFAULT_FILE_STORAGE = ‘utils.fdfs.storage.FDFSStorage’
设置fdfs使用的client.conf文件路径
FDFS_CLIENT_CONF = ‘./utils/fdfs/client.conf’
设置fdfs存储服务器上nginx的IP端口号
FDFS_URL = ‘http://192.168.50.134:8888/’
1.安装fastdfs依赖包
解压 libfastcommon-master.zip
进入解压包
执行 ./make.sh
执行 sudo ./make.sh install
2.安装fastdfs
步骤和上面一样
3.配置跟踪服务器tracker
首先copy 系统文件 sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
在/home/python/目录中创建目录 fastdfs/tracker
mkdir -p /home/python/fastdfs/tracker
之后就是编辑/etc/fdfs/tracker.conf配置文件:sudo vi /etc/fdfs/tracker.conf
修改bath_path = 上面创建的目录
4.配置存储服务器storage
首先copy系统文件 sudo cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
之后创建目录 mkdir -p /home/python/fastdfs/storage
编辑配置文件:sudo vi /etc/fdfs/storage.conf
修改 bath_path = 上面创建的目录
store_path0 = 上面创建的目录
tracker_server = 自己虚拟机的ip地址L:22122
5.启动tracker和storage
sudo service fdfs_trackerd start
sudo service fdfs_storaged strat
6.测试是否安装成功
sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
修改上面的文件:
base_path = /home/python/fastdfs/tracker
tracker_server = 自己虚拟机的ip地址:22122
fdfs_uoload_file /etc/fdfs/client.conf + 要上传的文件
7.安装nginx
解压nginx包
解压fastdfs-nginx-module-master.zip
进入nginx包内
执行:sudo ./cpnfigure --prefix=/usr/loacl/nginx/ --add-module=fastdfs-nginx-module-master 解压后的目录的绝对路径/src
sudo make
sudo make install
sudo cp fastdfs-nginx-module解压后的目录中src下的mod_fastdfs.conf /etc/fdfs/mod_fastds.conf
sudo vi /etc/fdfs/mod_fastdfs.conf
修改内容:
connect_timeout = 10
tracker_server = 自己虚拟机的ip地址:22122
url_have_group_name = true
store_path0=/home/python/fastdfs/storage
sudo cp 解压缩后的fastdfs目录中的http.conf /etc/fdfs/http.conf
sudo cp 解压缩后的fastdfs-master目录中的mime.types /etc/fdfs/mime.types
sudo vi /usr/local/nginx/conf/nginx.conf
在http部分中添加配置信息如下:
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即可 sudo ./nginx
8.使用python客户端上传
首先安装一个包 fdfs_client-py-master.zip
pip install fdfs_client-py-master.zip
修改三个文件的tracker_server=自己虚拟机的ip地址:22122
三个文件分别为 client.conf mod_fastdfs.conf storage.conf
重启tracker和storage nginx
9.用python与fdfs交互
创建utils/fdfs/storage.py
放入client.conf 修改bath_pase tracker_server
在storage.py放如下内容:
自定义文件存储类
from django.core.files.storage import Storage
from django.conf import settings
from fdfs_client.client import Fdfs_client
class FDFSStorage(Storage):
‘’‘fast dfs文件存储类’’’
def init(self, client_conf=None, base_url=None):
‘’‘初始化’’’
if client_conf is None:
client_conf = settings.FDFS_CLIENT_CONF
self.client_conf = client_conf
if base_url is None:
base_url = settings.FDFS_URL
self.base_url = base_url
def _open(self, name, mode='rb'):
'''打开文件时使用'''
pass
def _save(self, name, content):
# name 你选择上传文件的名字
# content 包含你上传文件内容的File对象
# 创建一个fdfs_client对象
client = Fdfs_client(self.client_conf)
# 上传文件到fsat_fdfs系统
res = client.upload_by_buffer(content.read())
if res.get('Status') != 'Upload successed.':
# 上传失败
raise Exception('上传文件到fast_fdfs失败')
filename = res.get('Remote file_id')
return filename
def exists(self, name):
return False
def url(self, name):
'''返回访问文件'''
return self.base_url + name
9 在配置setting
设置django的文件存储类
DEFAULT_FILE_STORAGE = ‘utils.fdfs.storage.FDFSStorage’
设置fdfs使用的client.conf文件路径
FDFS_CLIENT_CONF = ‘./utils/fdfs/client.conf’
设置fdfs存储服务器上nginx的IP端口号
FDFS_URL = ‘http://192.168.50.134:8888/’