ThinkPHP5使用think-queue队列
ThinkPHP5怎么使用think-queue队列?
所使用的ThinkPHP版本为5.0,所以think-queue也只能用低版本的。
使用composer安装依赖:
Home of Little Jelly
ThinkPHP5怎么使用think-queue队列?
所使用的ThinkPHP版本为5.0,所以think-queue也只能用低版本的。
使用composer安装依赖:
前面介绍了在FastAdmin下如何连接使用两个数据库,它用的是ThinkPHP版本是5,今天讲下怎么在ThinkPHP6下配置并连接使用多个数据库。
还是以两个为例,多个的原理是一样的。
ThinkPHP5框架中使用图形验证码是很方便的,分为三步。
1. 生成验证码;
2. 显示验证码;
3. 提交验证。
ThinkPHP自带的队列组件thinkphp-queue默认60秒超时,好像也没有配置的地方,只能硬改源码了。
文件路径`vendor/topthink/think-queue/src/queue/command/Listen.php`,修改`configure`方法
近几年FastAdmin框架用的比较多,它是基于ThinkPHP5的一个框架,在其中使用command,也就是自定义命令非常方便。
最近接手一个项目用到了ThinkPHP6框架,需要使用command来处理一些比较耗时的任务,原框架里并没有使用,那就自己来创建吧。
服务器可能的入侵点及措施。
### 可能的入侵点
1. 接口:SQL注入、XSS等;
2. 后台:直接改,插件;
目的:通过brew安装并配置nginx+php+mysql环境,并能正常运行一个ThinkPHP5项目。
环境:macOS Catalina 10.15.7,已安装brew。
最近一个ThinkPHP5做的项目硬盘满了,就给上传目录做了个软链接,即把`/public/uploads`使用`ln -s`命令指向了别的硬盘的目录`/data/uploads`,结果文件都上传失败,报500错误:
使用ThinkPHP5框架,包括基于ThinkPHP5框架开发的第三方框架操作数据库时,有时会提示`SQLSTATE[42S02]: Base table or view not found: 1146 Table ‘testdb.test_table’ doesn’t exist`。
即找不到表或视图。
首先检查下数据库中是否存在该表,一般情况下是因为表确实不存在。
ThinkPHP5的缓存和session默认使用文件存储。
即`application/config.php`中`cache`的`type`是`File`,而`session`的`type`是空。
可以改用Redis作为缓存和session的存储,效率更高。在分布式的环境中,使用Redis来存储,可以保证数据的一致性和会话的一致性。