CentOS下的php环境安装FastDFS客户端比较麻烦,这里为各位小伙伴提供一篇参考
CentOS 7
PHP 7.3
FastDFS 5.08
打开github源码库
下载地址
https://github.com/happyfish100/libfastcommon
下载libfastcommon-master.zip到服务,解压zip包
unzip libfastcommon-master.zip
编辑
cd libfastcommon-master ./make.sh ./make.sh install
注意该依赖很重要,不安装的话,后面的可能无法进行
下载地址
https://sourceforge.net/projects/fastdfs/files/FastDFS%20Server%20Source%20Code/
github库下载地址
https://github.com/happyfish100/fastdfs
这里下载的是FastDFSV5.08
解压压缩包
tar -zvxf FastDFS_v5.08.tar.gz
直接安装php_client端
cd ./FastDFS/php_client /www/server/php/73/bin/phpize #对应要编译版本的phpize ./configure --with-php-config=/www/server/php/73/bin/php-config #php安装目录下的php-config make && make install
报错
/root/FastDFS/php_client/fastdfs_client.c:10:33: fatal error: fastdfs/fdfs_client.h: No such file or directory #include "fastdfs/fdfs_client.h"
直接安装php_client端是不行的,必须整个FastDFS都安装一次,不友好
编译并安装FastDFS
cd ./FastDFS ./make.sh && ./make.sh install
必须先安装成功FastDFS,方才可以安装php_client端
再次执行php_clinet安装
cd ./FastDFS/php_client /www/server/php/73/bin/phpize #对应要编译版本的phpize ./configure --with-php-config=/www/server/php/73/bin/php-config #php安装目录下的php-config make && make install ... ... Installing shared extensions: /www/server/php/73/lib/php/extensions/no-debug-non-zts-20180731/
安装成功
首先检查一下php的拓展
/www/server/php/73/bin/php -m [PHP Modules] bcmath Core ctype curl date dom fileinfo filter ftp gd gettext hash iconv intl json libxml mbstring mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar posix redis Reflection session shmop SimpleXML soap sockets sodium SPL sqlite3 standard sysvsem tokenizer xml xmlreader xmlrpc xmlwriter zip zlib
配置php.ini
#修改php.ini文件添加fastdfs相关配置(php_client文件夹下fastdfs_client.ini内容添加到php.ini中) cat ./fastdfs_client.ini >> /www/server/php/73/etc/php.ini #重启php service php-fpm restart #验证,查看是否有fastdfs_client扩展 /www/server/php/73/bin/php -m # 报错 [2022-01-19 15:00:03] ERROR - file: shared_func.c, line: 1214, file /etc/fdfs/client.conf not exist [2022-01-19 15:00:03] ERROR - file: client_func.c, line: 198, load conf file "/etc/fdfs/client.conf" fail, ret code: 2 PHP Fatal error: Unable to start fastdfs_client module in Unknown on line 0
说找不到client.conf配置文件,无法启动fastdfs_client模块,估计是php.ini配置中的路径问题
vi /www/server/php/73/etc/php.ini # 修改client.conf配置的地址 fastdfs_client.tracker_group0 = /etc/fdfs/client.conf # 这里修改正确的路径,可以直接指向安装包下的FastDFS/conf/client.conf
最后一部,修改clien.conf的tracker_server主机地址配置
#client.conf tracker_server=192.168.0.197:22122
重启php
service php-fpm restart # 查看一下是否启动成功 [root@hecs-x-large-2-linux-20201101153549 FastDFS]# /www/server/php/73/bin/php -m [PHP Modules] bcmath Core ctype curl date dom fastdfs_client fileinfo filter ftp gd gettext hash iconv intl json libxml mbstring mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar posix redis Reflection session shmop SimpleXML soap sockets sodium SPL sqlite3 standard sysvsem tokenizer xml xmlreader xmlrpc xmlwriter zip zlib [Zend Modules]
启动成功
php 客户端的相关封装包
https://sourceforge.net/projects/fastdfs/files/PHP%20Client%20API%20Source%20Code/