thinkphp5 项目笔记

本文记录了在ThinkPHP5(简称TP5)框架下遇到的问题,特别是使用dump方法无法正常打印经openssl_sign加密的数据,揭示了TP框架内dump方法的局限性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、解决500错误(index.php首页为空白页面
(1)
在index.php开头,打开报错,如下
error_reporting(E_ALL);
ini_set('display_errors', '1');
(2)
打开nginx配置的错误日志


2、问题:
Warning: require(): open_basedir restriction in effect. File(/home/stone/dsales/src_web/v1r0/simplewind/thinkphp/base.php) is not within the allowed path(s): (/home/stone/dsales/src_web/v1r0/public/:/tmp/:/proc/) in /home/stone/dsales/src_web/v1r0/public/index.php on line 38
解决
(1)检查php.ini的 open_basedir的参数
(2)如果是lnmp(nginx服务器),检查 path/nginx/conf/fastcgi.conf里的 $document_root参数
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/:/home/stone/dsales/"; (/home/stone/dsales/为项目路径)
注意:如果在fastcgi.conf里没有 fastcgi_param PHP_ADMIN_VALUE……自行添加


3、问题
session驱动使用redis时,出现:
session_start(): Failed to initialize storage module: user (path: )

解决(1):在php.ini中 把
session.save_handler = files
修改为
session.save_handler = user
(这个好像不用改)

解决(2):
在TP5中,因为要用到redis,所以会在…path\simplewind\thinkphp\library\think\session\driver\Redis.php 75行调用到php的扩展函数(new \Redis)->close(),所以如果发现项目加载奇慢,要考虑到是否开启或加载了php-redis函数扩展库(注意:不是redis,而是php-redis扩展,可用phpinfo查看)

4、TP框架本身自己封的方法dump有点问题,不能打印加密过的东西,如 openssl_sign;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值