fastadmin 基本使用配置


fastadmin 版本 1.3.5
thinkphp  版本 5.0.25


配置 cache         为 redis 保存

// +----------------------------------------------------------------------
// | 缓存设置
// +----------------------------------------------------------------------
'cache'                  => [
    // 驱动方式
    'type'   => 'redis',
    'host'                   => Env::get('redis.hostname'),
    'password'               => Env::get('redis.password'),
    'port'                   => Env::get('redis.hostport'),
    'select' => 2,     # 设置保存数据库
    // 缓存保存目录
    'path'   => CACHE_PATH,
    // 缓存前缀
    'prefix' => 'cache_',
    // 缓存有效期 0表示永久缓存
    'expire' => Env::get('redis.expire'),

],


配置 session     为 redis 保存

 // +----------------------------------------------------------------------
// | 会话设置
// +----------------------------------------------------------------------
'session'                => [
    'id'             => '',
    // SESSION_ID的提交变量,解决flash上传跨域
    'var_session_id' => 'fastadmin',
    // SESSION 前缀
    'prefix'         => 'session', # 当前作用域
    // 驱动方式 支持redis memcache memcached
    'type'           => 'redis',
    'session_name'           => 'session_', # session_ 前缀
    // 是否自动开启 SESSION
    'auto_start'     => true,

    'host'                   => Env::get('redis.hostname'),
    'password'               => Env::get('redis.password'),
    'port'                   => Env::get('redis.hostport'),
    'select' => 2,     # 设置保存数据库
    // 缓存有效期 0表示永久缓存
    'expire' => Env::get('redis.expire'),
    //'cache_limiter'=>''
],

配置文件访问到第三方服务器 dfs

/**
 * CDN地址
 */
'cdnurl'    => '',

配置 token 保存到 redis 
// +----------------------------------------------------------------------
// | Token设置
// +----------------------------------------------------------------------
'token'                  => [
    // 驱动方式
    'type'     => 'Redis',
    // 缓存前缀
    'key'      => '9M1d3jy2gGbtfXSQAZ4oIslC0Yz56cFK',
    // 加密方式
    'hashalgo' => 'ripemd160',
    // 缓存有效期 0表示永久缓存
    'expire'   => 0,
    'host'                   => Env::get('redis.hostname'),
    'password'               => Env::get('redis.password'),
    'port'                   => Env::get('redis.hostport'),
    'select' => 2,     # 设置保存数据库
],


行为定义:就是多个方法调用,使代码更简洁,,不是异步,是同步调用,,相当于 common 里面的方法

//注册成功的事件
Hook::listen("user_register_successed", $registerdata);
区别在于,没有也不会报错
定义行为 https://www.kancloud.cn/manual/thinkphp5/118130


如果修改了 public/assets/js/ 下的公共文件,
就需要 运行 php think min -m all -r all 进行更新压缩文件,
不然在debug=false 不会执行修改的代码


配置 workman nginx 端口转发

ws://192.168.1.202/ws

location /ws {
    proxy_pass http://127.0.0.1:2346;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    rewrite /ws/(.*) /$1 break;
    proxy_redirect off;
}

workman crontab

 # 每个进程启动都会调用一次,多个进程调用多次,同时执行
var_dump($worker->count);

if($worker->id === 0){
    new Crontab('1 * * * * *', function(){
        echo "test1".date('Y-m-d H:i:s')."\n";  #1
        sleep(5);
    });


    new Crontab('1 * * * * *', function(){
        echo "test2".date('Y-m-d H:i:s')."\n"; #4
    });

}elseif($worker->id === 1){
    new Crontab('1 * * * * *', function(){
        echo "test3".date('Y-m-d H:i:s')."\n"; # 2
        sleep(5);
    });


    new Crontab('1 * * * * *', function(){
        echo "test4".date('Y-m-d H:i:s')."\n"; #5
    });
}elseif($worker->id === 2){
    new Crontab('1 * * * * *', function(){
        echo "test5".date('Y-m-d H:i:s')."\n"; #3
        sleep(5);
    });


    new Crontab('1 * * * * *', function(){
        echo "test6".date('Y-m-d H:i:s')."\n"; #6
    });
}


难点:
配置 site.php,到 redis 需要手动写代码


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/81161.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[交互]AJAX

[交互]AJAX 创建 XMLHttpRequest发送请求服务器响应XMLHttpRequest readyState 状态值响应数据请求状态变更回调函数XMLHttpRequest status 的值常用状态码设置 AJAX 是技术,不是工具,区别于 axios、fetch、$.ajax 等(封装工具)现有交互工具,是用于改变部…

【C++深入浅出】日期类的实现

目录 一. 前言 二. 日期类的框架 三. 日期类的实现 3.1 构造函数 3.2 析构函数 3.3 赋值运算符重载 3.4 关系运算符重载 3.5 日期 /- 天数 3.6 自增与自减运算符重载 3.7 日期 - 日期 四. 完整代码 一. 前言 通过前面两期类和对象的学习,我们已经对C的…

Mysql的定时备份与恢复

MySQL定时备份与还原 MySQL备份方案 物理备份 这种备份方式将数据库的实际文件复制到另一个位置。常见的物理备份工具包括mysqldump和Percona XtraBackup。具体操作如下: 使用mysqldump 命令备份数据库: mysqldump -u username -p database_name >…

【微信小程序】项目初始化

| var() CSS 函数可以插入一个自定义属性(有时也被称为“CSS 变量”)的值,用来代替非自定义 属性中值的任何部分。 1.初始化样式与颜色 view,text{box-sizing: border-box; } page{--themColor:#ad905c;--globalColor:#18191b;--focusColor…

RHCSA 重定向、vim练习题

1.重定向练习题 (1)新建一个文件redirect.txt,并在其中写入20210804RHCSA,保存并退出 先输入命令 [rootlocalhost ~]# vim redirect.txt进入vim编辑器后,按快捷键“i”进入编辑模式,再写入数据,写完之后按“esc"键退出编辑…

多款大模型向公众开放,百模大战再升级?

作为一种使用大量文本数据训练的深度学习模型,大模型可以生成自然语言文本或理解语言文本的含义,是通向人工智能的一条重要途径。大模型可以应用于各种机器学习任务,包括自然语言处理、计算机视觉、语音识别、机器翻译、推荐系统、强化学习等…

vue项目通过json-bigint在前端处理java雪花id过长导致失去精度问题

这里 我简单模仿了一个接口 这里 我单纯 返回一个long类型的雪花id 然后 前端 用 axios 去请求 大家知道 axios 会对请求数据做一次处理 而我们 data才是拿到我们java这边实际返回的东西 简单说 就是输出一下我们后端返回 的内容 这里 我们网络中显示的是 35866101868095488…

Mysql树形表的两种查询方案(递归与自连接)

你有没有遇到过这样一种情况: 一张表就实现了一对多的关系,并且表中每一行数据都存在“爷爷-父亲-儿子-…”的联系,这也就是所谓的树形结构 对于这样的表很显然想要通过查询来实现价值绝对是不能只靠select * from table 来实现的&#xff0…

Ubuntu 22.04安装过程

iso下载地址 Ubuntu Releases 1.进入引导菜单 选择Try or Install Ubuntu Server安装 2.选择安装语言 默认选择English 3.选择键盘布局 默认即可 4.选择安装服务器版本 最小化安装 5.配置网络 选择ipv4 选择自定义 DHCP也可 6.配置代理 有需要可以配置 这里跳过 7.软件源 …

Windows配置python(anaconda+vscode方案)的主要步骤及注意事项

Windows配置python(anacondavscode方案)的主要步骤及注意事项 1、准备工作 anaconda,官网下载(直接下载最新版)vscode,官网下载 (官网直接下载有可能太慢,可以考虑在国内靠谱的网站上下载&…

第7节-PhotoShop基础课程-视图调整

文章目录 前言1.视图菜单1. 视图操作1.校样颜色 Ctrl Y2.色域警告 Ctrl Shift Y3.像素长宽比 2.显示操作1.大小调整1.Alt 滚轮2.放大选项3.按空格 出现抓手 2.按屏幕大小缩放 Ctrl 0(数字0)3.按实际大小缩放 Ctrl 11.标准屏幕模式2.带有菜单栏的全屏模式3.全屏模式4.只显…

《PostgreSQL事务管理深入解析》

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🐅🐾猫头虎建议程序员必备技术栈一览表📖: 🛠️ 全栈技术 Full Stack: &#x1f4da…

idea中dataBase模板生成

controller.java.vm ##定义初始变量 #set($tableName $tool.append($tableInfo.name, "Controller")) ##设置回调 $!callback.setFileName($tool.append($tableName, ".java")) $!callback.setSavePath($tool.append($tableInfo.savePath, "/contro…

HTML

HTML 1.HTML结构 1.1认识HTML HTML是超文本标记语言&#xff0c;电脑上看到的所有网站都是html实现的 HTML代码是“标签”构成的&#xff0c;简单来说&#xff0c;html就是一堆标签的组合 形如 <body>hello</body>标签名 (body) 放到 < > 中 大部分标签成…

Linux安全加固:保护你的服务器

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

什么是Jmeter?Jmeter使用的原理步骤是什么?

1.1 什么是 JMeter Apache JMeter 是 Apache 组织开发的基于 Java 的压力测试工具。用于对软件做压力测试&#xff0c;它最初被设计用于 Web 应用测试&#xff0c;但后来扩展到其他测试领域。 它可以用于测试静态和动态资源&#xff0c;例如静态文件、Java 小服务程序、CGI 脚…

多输入多输出 | MATLAB实现CNN-BiGRU卷积双向门控循环单元多输入多输出

多输入多输出 | MATLAB实现CNN-BiGRU卷积双向门控循环单元多输入多输出 目录 多输入多输出 | MATLAB实现CNN-BiGRU卷积双向门控循环单元多输入多输出预测效果基本介绍程序设计往期精彩参考资料 预测效果 基本介绍 MATLAB实现CNN-BiGRU卷积双向门控循环单元多输入多输出&#xf…

Rust源码分析——Rc 和 Weak 源码详解

Rc 和 Weak 源码详解 一个值需要被多个所有者拥有 rust中所有权机制在图这种数据结构中&#xff0c;一个节点可能被多个其它节点所指向。那么如何表示图这种数据结构&#xff1f;在多线程中&#xff0c;多个线程可能会持有同一个数据&#xff1f;如何解决这个问题。 Rc rus…

GIS跟踪监管系统信息查询

GIS跟踪监管系统信息查询 GIS跟踪监管系统&#xff08;1&#xff09;物资查询与展示。① 几何查询。代码说明&#xff1a;② 物资定位。• 单个物资定位&#xff1a;• 多个物资定位&#xff1a;③ 物资统计。&#xff08;2&#xff09;物资信息更新① 新增物资。 GIS跟踪监管系…

【Tensorflow 2.12 电影推荐项目搭建】

Tensorflow 2.12 电影推荐项目搭建 学习笔记工具、环境创建项目项目配置安装相关python包召回模型实现排序模型实现实现电影推荐导入模块设置要推荐的用户召回推荐排序推荐推荐结果结尾学习笔记 Tensorflow 2.12 电影推荐项目搭建记录~ Tensorflow是谷歌开源的机器学习框架,可…