工作上遇到一个问题,有个栏目下面的文章全部是404,首先看了一下CDN源服务器,发现文件都正常,是访问是404,以为是CDN的问题,于是告知运维联系CDN,CDN方反馈源站返回302到404,修改hosts试了一下,果然是这样,后来查看了Nginx配置,发现了一个坑,配置是这样的: locat

阅读全文 »

ssh服务器之后编辑文件提示写入swap错误,查看磁盘存储发现空间被占用100%,其中/var/log/maillog占了很大一部分,删除之后发现问题还是存在,查阅资料之后发现,如果服务正在运行,删除日志的话空间还是没有释放,于是重启rsyslog服务之后空间恢复正常。 service rsyslog restart <b

阅读全文 »

错误日志是这样的: ConnectionException in AbstractConnection.php line 155: Connection refused [tcp://redis:tcp://172.17.0.2:6379] Laravel中代码是这样的: Cache::put('test', 'killer', 20); dd(Cache::get('test')); 进入php容器使用

阅读全文 »

Windows下开发真是折腾,无奈工作中要使用一些win软件,不得已,使用vagrant经常重启之后就会出现错误,今天启动的时候又出错了,所以决定在win下使用Docker,然后又遇到了坑,因为Windows不支持Docker,所以Windows下的Docker实际上还是基于虚拟机,所以,涉及到一个虚拟机与物理机的目录共享和端口映射问题。 目录挂载 问题:docker-compose up启动之后挂载的目录有问题,进入容器查看发现并没有成功

阅读全文 »

运行环境: docker-compose运行了四个容器,分别是nginx、php、mysql、redis容器 php环境:laravel 出现的问题: 在容器内执行php artisan migrate的时候提示pdo timeout,但是浏览器访问正常。 解决过程:刚开始在容器内执行php artisan migrate出错,然后ping一下mysql地址,返回的地址不对,按说应该是172网段的地址,但是得到的地址是个公网地址,于是又查看naseserv

阅读全文 »

PHP闭包函数内部不能调用上下文变量,比如: $data = 1; example(function(){ echo $data }); 如果想使用上下文变量,要修改为这样: $data = 1; example(function() use ($data){ echo $data });

阅读全文 »

最近工作上有个需求,需要在文章发布的时候做一些动作,正常发布没有什么问题,但是定时发布的时候无法监控动作,后来想到了一个解决方案,使用Redis的有序集合,score设置为时间戳,每隔一段时间定时取出Redis中小于等于当前时间戳的值,然后zRemove。

阅读全文 »