Charlie Blog


  • 首页

  • 归档

  • 分类

  • 标签

  • 关于

  • 搜索

Laravel log 无法写入问题

发表于 2017-05-10 | 阅读次数

问题1

账号登录报500错误,也没有返回错误信息,没办法只能使用原始方法,到现在一行一行打印。到 Log::info() 后面就无法正常显示了,那么问题就找到了。

导致无法写入日志的问题,是由于代码更新时添加了文件是root用户,所以创建日志文件也是root权限,导致其它用户的www权限无法写入日志文件中。

阅读全文 »

Laravel 数组分页(带搜索功能)

发表于 2017-04-24 | 分类于 Laravel | 阅读次数

目标

由于数据是从mysql和mongodb里的两个表中取数据,并且根据两个表中的字段关联来获取数据,所有没有直接的sql获取。只有通过循环获取。然而获取的数据是数组,无法使用laravel自带的paginate分页方法。下面是解决办法:

阅读全文 »

CentOS 7 安装配置Supervisor

发表于 2017-04-14 | 分类于 Linux | 阅读次数

简介

Supervisor 是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。

因为Supervisor是Python开发的,安装前先检查一下系统否安装了Python2.4以上版本。下面以CentOS7,Python2.7版本环境下,介绍Supervisor的安装与配置步聚:

阅读全文 »

lumen 部署到线上遇到的问题

发表于 2017-04-14 | 阅读次数

lumen 默认的日志保存模式是single

也就是单文件模式

要想改成每日的daily模式可以在bootstrap/app.php下添加:

1
2
3
4
5
6
7
8
/*
* 配置日志文件为每日
*/
$app->configureMonologUsing(function(Monolog\Logger $monoLog) use ($app){
return $monoLog->pushHandler(
new \Monolog\Handler\RotatingFileHandler($app->storagePath().'/logs/lumen.log',5)
);
});
阅读全文 »

Laravel 安装第三方包 Mongodb报错

发表于 2017-03-28 | 分类于 Laravel | 阅读次数

由于项目使用mongodb数据库来存储数据,所以需要第三方包mongodb来配合;这里使用composer来安装。

安装jenssegers/mongodb报错

阅读全文 »

Laravel 5.4 事件操作

发表于 2017-03-22 | 分类于 Laravel | 阅读次数

简介

Laravel 事件机制实现了一个简单的观察者模式,让我们可以订阅和监听应用中出现的各种事件。事件类 (Event) 类通常保存在 app/Events 目录下,而它们的监听类 (Listener) 类被保存在 app/Listeners 目录下。如果你在应用中看不到这些文件夹也不要担心,因为当你使用 Artisan 命令来生成事件和监听器时他们会被自动创建。

事件机制是一种很好的应用解耦方式,因为一个事件可以拥有多个互不依赖的监听器。例如,这里我们基于之前基于模型+缓存对文章增删改查这篇文件对文章保存后缓存的处理做进一步优化。我们将文章保存(新建/修改)视为一个事件,将保存文章内容到缓存放到监听器中实现:

阅读全文 »

lumen 队列发送邮件

发表于 2017-03-16 | 分类于 Lumen , PHP | 阅读次数

简介

Lumen 的队列服务为不同的队列后端系统提供了一套统一的 API 。队列允许你将一个耗时的任务进行延迟处理,例如像 e-mail 发送。这能让应用程序对页面的请求有更快的响应。

Lumen 和 Laravel 的队列功能除了接下来会列出来的不同点以外,并没有太大区别,所以更多关于 Lumen 队列的使用,请参阅 Laravel 文档 。

阅读全文 »

lumen 头像上传

发表于 2017-03-06 | 分类于 PHP , Lumen | 阅读次数
简介

Lumen 可以使用 Illuminate\Http\Request 实例中的 file 方法来获取上传文件。file方法返回的对象是 Symfony\Component\HttpFoundation\File\UploadedFile 类的实例,该类继承了 PHP 的 SplFileInfo 类,并提供了许多和文件交互的方法:

1
$file = $request->file('photo');

你可以使用请求的 hasFile 方法确认上传的文件是否存在:

阅读全文 »

密码错误3次锁定账号

发表于 2017-03-03 | 分类于 PHP , Lumen | 阅读次数
逻辑简介

创建数据表

1
2
3
4
5
6
7
8
9
10
11
CREATE TABLE `userlock` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',
`userid` int(10) unsigned NOT NULL COMMENT '用户id',
`lock_time` int(11) unsigned NOT NULL DEFAULT '14400' COMMENT '锁定时间,默认14400秒',
`error_times` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '错误次数,默认0次',
`last_login` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最新登录时间',
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `userid` (`userid`)
) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8;
阅读全文 »

lumen表单验证

发表于 2017-03-03 | 分类于 PHP , Lumen | 阅读次数
简介

Lumen 提供了多种不同的处理方法来对应用程序传入的数据进行验证。默认情况下,Lumen 的基底控制器类使用了 ValidatesRequests trait,其提供了一种便利的方法来使用各种强大的验证规则验证传入的 HTTP 请求。

Lumen 和 Laravel 验证功能除了接下来会列出来的不同点以外,并没有太大区别,所以更多关于 Lumen 验证的使用,请参阅 Laravel 文档 。

Lumen 与 Laravel 不同,表单请求验证需要Laravel支持。Lumen 可以使用$this-validate方法来验证。

还有不同的是,Lumen 支持路由闭包的方式直接使用validate方法

阅读全文 »
123…6
Charlie Cen

Charlie Cen

59 日志
43 分类
125 标签
RSS
GitHub Twitter 微博
© 2018 Charlie Cen
由 Hexo 强力驱动
主题 - NexT.Pisces