ThinkPHP5中报了一个错:ini_set(): A session is active. You cannot change the session module's ini settings at this time。
后端开发 03/14,2020
mysql可以为不同的客户端设置不同的sql_mode,并且每个应用能够设置他自己的会话级别的sql_mode。sql_mode会影响sql语法以及mysql显示数据的正确性。官方文档建议:当使用innodb存储引擎表时,考虑使用innodb_strict_mode模式的sql_mode,它能增量额外的错误检测功能。
后端开发 03/14,2020
在swoft框架中使用redis缓存,写入字符串到redis key中,结果发现get出来的值,前面多了一串代码,仔细一看,是被序列化后的值保存在了redis中,那么是什么原因,让redis在set字符串时,默认序列化字符串呢?仔细查询文档,才发现究竟。
后端开发 03/10,2020
如果你的前端应用和后端 API 服务器没有运行在同一个主机上,你需要在开发环境下将 API 请求代理到 API 服务器。这个问题可以通过 vue.config.js 中的 devServer.proxy 选项来配置。`vue` 请求后端,涉及到跨域问题,vue按照官方文档正确设置了代理,axios请求中地址也正确配置,但发现报了一个错:Proxy error: Could not proxy request
Web前端 03/08,2020
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件。由服务器及客户端程序构成,可实现Linux目录共享,然后再Windows系统中链接访问共享目录。
运维技术 03/02,2020
MySQL主从复制是MySQL优化的重点之一,可解决数据分布,负载均衡,备份,以及实现数据库的高可用性和容错性,本篇介绍MySQL双主热备,实现互为主从。主服务器用于写数据,从服务器监听主服务器中的二进制日志,从而来实现主从复制。
后端开发 02/21,2020
Redis Cluster提供了一种运行Redis安装的方法,在该安装中,数据会 在多个Redis节点之间自动分片。Redis Cluster 在分区期间还提供了一定程度的可用性,这实际上是在某些节点出现故障或无法通信时继续操作的能力。但是,如果发生较大故障(例如,大多数主服务器不可用时),集群将停止运行。Redis Cluster自动分割在多个节点之间的数据集,一部分节点出现故障或无法与集群的其余部分通信时,继续运行的能力。
运维技术 02/08,2020
Supervisor是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动重启。在PHP框架Laravel中,提供了对队列的支持,要让队列监听常驻内存,就需要借助Supervisord守护进程工具,同时,解决使用了Supervisor后,Laravel队列被重复执行的问题。
运维技术 01/21,2020
MySQL用mysqldump命令实现数据库备份,需将密码明文方式显示在命令上,但在运行时会报错:mysqldump: [Warning] Using a password on the command line interface can be insecure.这是mysql的登录安全机制,那么我们如何在mysqldump命令中明文传输密码并实现备份呢?
后端开发 12/28,2019
之前有介绍过使用官方镜像构建php环境,多个容器相关联,虽然能达到效果,但是效率却降低了一半,如果需要在多台服务器上构建环境,都需要重复去pull镜像,运行关联容器,为了方便克隆,我试着写了个简单的dockerfile,包括了php、nginx、git以及composer基础环境。
运维技术 12/15,2019
SQL注入是最严重,也是最常见的漏洞之一,开发人员在处理程序与数据库交互时,如果未对数据进行严格的校验防护,会出现非常严重的安全隐患,SQL注入的攻击方式有报错注入、普通注入、隐式类型注入、盲注、宽字节注入、二次解码注入,这里主要记录下MySQL隐式注入。
后端开发 12/05,2019