php的服务器地址:10.10.1.2

fastdfs tracker地址:10.15.1.2

fastdfs storage地址:10.16.1.2

将fastdfs的源码上传到php所在服务器,进入php_client目录

01.[root@web1 ~]# cd /root/FastDFS/php_client
02.[root@web1 php_client]# /usr/local/php/bin/phpize
03.Configuring for:
04.PHP Api Version:         20090626
05.Zend Module Api No:      20090626
06.Zend Extension Api No:   220090626
07.[root@web1 php_client]# ./configure --with-php-config=/usr/local/php/bin/php-config
08.[root@web1 php_client]# make && make install
09.[root@web1 php_client]# cat fastdfs_client.ini >> /usr/local/php/etc/p
10.pear.conf             php-fpm.conf          php-fpm.conf.default
11.[root@web1 php_client]# cat fastdfs_client.ini >> /etc/php.ini

验证模块是否被正常加

1.[root@web1 php_client]# /usr/local/php/bin/php -m | grep fastdfs_client
2.fastdfs_client              #说明模块已加载 www.it165.net
3. 
4.重新加载php
5.[root@web1 php_client]# service php-fpm reload

修改为如下配置:

1.tracker_server=192.168.25.204:22122
2.http.tracker_server_port=80
3. 
4.重新加载php
5.[root@web1 php_client]# service php-fpm reload

然后我们写个小页面,写个php脚本上传

1.[root@web1 ~]# echo "php client is here." > /opt/upload.txt
2.[root@web1 ~]# vim test.php
3.<?php
4.var_dump(function_exists('fastdfs_storage_upload_by_filename'));
5.$ret = fastdfs_storage_upload_by_filename('/opt/upload.txt');
6.var_dump($ret);
7.?>

执行php脚本

[root@web1 ~]# /usr/local/php/bin/php test.php

结果如下图所示:

我们来访问下试试;

到此为止我们关于fastdfs的完整应用就介绍到此了,希望大家都动手做一下!还有关于fastdfs php插件的使用方法和函数调用方法,可以看/root/FastDFS/php_client/README,里面有详细介绍!此篇博文过程中如果有什么不对的地方,还请朋友们们指正,大家一起进步!

https://www.cnblogs.com/jkko123/p/6294578.html
php扩展也需要依赖于FastDFS一些库文件,所以请先安装FastDFS,具体请看我之前的文章。

 
一、安装目录
1
2
3
4
php安装目录
/data/nmp/php
FastDFS源码目录
/data/wwwroot/FastDFS
二、安装php扩展
1、进入php_client目录
1
> cd /data/wwwroot/FastDFS/php_client/

2、运行phpize

1
> /data/nmp/php/bin/phpize

3、configure

1
./configure --with-php-config=/data/nmp/php/bin/php-config

4、make && make install

1
> make && make install

5、如果出现如下信息则生成成功。

1
Installing shared extensions: /data/nmp/php/lib/php/extensions/no-debug-non-zts-20151012/

6、修改php.ini

1
> vi /data/nmp/php/lib/php.ini

打开php_client/fastdfs_client.ini文件,并在php.ini中添加如下内容

1
2
3
4
5
6
7
8
9
10
11
12
[FastDFS]
extension = fastdfs_client.so
fastdfs_client.base_path = /data/storage
fastdfs_client.connect_timeout = 2
fastdfs_client.network_timeout = 60
fastdfs_client.log_level = info
fastdfs_client.log_filename =
fastdfs_client.http.anti_steal_secret_key =
fastdfs_client.tracker_group_count = 1
fastdfs_client.tracker_group0 = /etc/fdfs/client.conf
fastdfs_client.use_connection_pool = true
fastdfs_client.connection_pool_max_idle_time = 3600
路径根据自已的情况进行设置。
7、重启php-fpm,查看phpinfo();
如果出现fastdfs_client等信息,说明安装成功。
 
8、我们创建文件,并通过php上传文件
1
2
> echo "test test test" > test.txt
> vi test.php
代码如下:
1
2
3
<?php
$ret = fastdfs_storage_upload_by_filename('./test.txt');
var_dump($ret);

访问该test.php输出如下内容,说明上传成功。

1
2
3
4
array(2) {
    ["group_name"]=> string(6) "group1"
    ["filename"]=> string(44) "M00/00/00/wKgJClcQJc-AeBdeAAAADxtaRO4977.txt"
}
我们通过如下地址访问,则可以看到上传文件内容
1
http://192.168.9.10:8080/group1/M00/00/00/wKgJClcQJc-AeBdeAAAADxtaRO4977.txt

(*注意,看你的storage的配置,是否要加上组名,不然会显示404)

FastDFS client php extension compiled under PHP 5.4 and PHP 7.0, Steps:
phpize
./configure
make
make install

#copy lib file to php extension directory, eg. /usr/lib/php/20060613/
cp modules/fastdfs_client.so  /usr/lib/php/20060613/

#copy fastdfs_client.ini to PHP etc directory, eg. /etc/php/
cp fastdfs_client.ini /etc/php/

#modify config file fastdfs_client.ini, such as:
vi /etc/php/fastdfs_client.ini

#run fastdfs_test.php
php fastdfs_test.php

php使用fastdfs的更多相关文章

  1. 【架构设计】分布式文件系统 FastDFS的原理和安装使用

    本文地址 分享提纲: 1.概述 2. 原理 3. 安装 4. 使用 5. 参考文档 1. 概述 1.1)[常见文件系统] Google了一下,流行的开源分布式文件系统有很多,介绍如下:   -- mo ...

  2. FASTDFS调研报告(V1.0)

    之前的文章,现在放出来,以供参阅. 一.fastdfs简介 FastDFS是一个轻量级的开源分布式文件系统 FastDFS主要解决了大容量的文件存储和高并发访问的问题,文件存取时实现了负载均衡 Fas ...

  3. 网站文件系统发展&&分布式文件系统fastDFS

    网站文件系统发展 1.单机时代的图片服务器架构 初创时期由于时间紧迫,开发人员水平也很有限等原因.所以通常就直接在website文件所在的目录下,建立1个upload子目录,用于保存用户上传的图片文件 ...

  4. FastDFS 安装及使用

    FastDFS 安装及使用 2012-11-17 13:10:31|  分类: Linux|举报|字号 订阅     Google了一下,流行的开源分布式文件系统有很多,介绍如下:   mogileF ...

  5. 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署

    少啰嗦,直接装 看过上一篇分布式文件系统 - FastDFS 简单了解一下的朋友应该知道,本次安装是使用目前余庆老师开源的最新 V5.05 版本,是余庆老师放在 Github 上的,和目前你能在网络上 ...

  6. 分布式文件系统 - FastDFS 简单了解一下

    别问我在哪里 也许我早已不是我自己,别问我在哪里,我一直在这里. 突然不知道说些什么了... 初识 FastDFS 记得那是我刚毕业后进入的第一家公司,一个技术小白进入到当时的项目组后,在开发中上传用 ...

  7. 分布式文件系统 - FastDFS 配置 Nginx 模块及上传测试

    也不说废话,直接干 上一篇 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署 中安装了 FastDFS 后,并配置启动了 Tracker 和 Storage 服务,已经可以上传文件 ...

  8. centos 系统下安装FastDFS+nginx+fastdfs-nginx-module安装配置

    前言: 以前的项目上传的文件都是保存到本地或者是局域网内的共享文件夹下,由于数据量,服务器的负载均衡(分机的某些图片无法访问的问题处理)等因素的情况下,就想到用fastdfs来文件管理,花了几天时间硬 ...

  9. FastDFS+Nginx(单点部署)事例

    FastDFS是由淘宝的余庆先生所开发,是一个轻量级.高性能的开源分布式文件系统,用纯C语言开发,包括文件存储.文件同步.文件访问(上传.下载).存取负载均衡.在线扩容.相同内容只存储一份等功能,适合 ...

  10. 在虚拟机中配置FastDFS+Nginx模块

    先上部署图 提示一下, ip 192.168.72.138 上面部署了两个group, 分别为 group1和g2. 另外, 同组之内的 port 要保持一致. 一.安装准备 1. #每台机器都添加两 ...

随机推荐

  1. 1. nginx添加自定义http模块(简单)

    步骤 1. 新建模块目录2. 添加模块配置文件3. 编写模块源码文件4. 在主配置文件中配置访问location5. 编译加入模块文件6. 测试 新建模块目录 mkdir /opt/nginx/ext ...

  2. Hyperledger Fabric 建立一个简单网络

    Building you first network 网络结构: 2个Orgnizations(每个Org包含2个peer节点)+1个solo ordering service 打开fabric-sa ...

  3. C++的qsort函数

    void qsort(void * base,int nelem,int width,int (*fcmp)(const void*,const void *) 1.待排序数组首地址 2.数组中待排序 ...

  4. Spark笔记

    Spark基础 第一节:什么是Spark?Spark的特点和结构 1.什么是Spark? Spark是一个针对大规模数据处理的快速通用引擎. 类似MapReduce,都进行数据的处理 2.Spark的 ...

  5. tomcat文件下目录介绍

    主目录下有bin ,conf ,lib ,logs ,temp ,webapps ,work 7个文件夹,下面对它们分别进行介绍: 1.bin目录主要是用来存放tomcat的命令,主要有两大类,一类是 ...

  6. 测试工具安装(JMeter,Postman)

    Jmeter的安装依赖Java环境,所以必须安装JDK(1.8版本以上的),与JRE集成安装.记得配置环境变量.(5H) Postman,我安装的windows64的,直接在官网下载就好了.不需要在c ...

  7. python学习-序列基本知识

    序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. 用到的主要序列有元组和列表. 先定义一个列表 names=[&q ...

  8. Labview笔记-创建自定义控件

    labview中的控件种类很多,但是样式或者外观有时不能满足我们的需求.如何制作一个好看酷酷的自定义控件呢? 以开关为例,我们先添加一个labview中自带的确定开关控件 之后右键该控件--高级--自 ...

  9. callback函数

    const getUserInfo = function (callback) { try { let params = { "url": "https://h5.m.t ...

  10. BUAAOO P5-P7 Elevator Simulation

    目录 Abstract Introduction Topic Request Elevator Analysis Reading Requests Coordinating Scheduling an ...