Month: 8月 2020

laravel如何自定义404,500等错误页面

laravel如何自定义404,500等错误页面

1.线上环境的话如果用户打开网页的话laravel框架自带的错误界面是非常丑陋的,关键是不美观这里我们自定义一下界面

2.在laravel项目的  resources目录下的views目录下新建一个目录叫做errors,
然后把在https://github.com/laravel/framework/tree/6.x/src/Illuminate/Foundation/Exceptions/views
目录下载的所有错误页面添加在目录中,可根据需要修改页面代码,或者从网上下载其它的静态或动态页面,如果是动态的记得在public目录中引用资源

 第二种方法

或者使用laravel框架提供的路由返回报错视图

Route::fallback(function (){
return view('404');
});

    

H5唤起APP指南(附开源唤端库)

前一段时间在做一些H5页面,需求中落地页占比较大,落地页承担的职责就是引流。引流有两种形式,同时也是我们对唤端的定义:引导已下载用户打开APP,引导未下载用户下载APP。

引导已下载用户打开APP,从数据上说用户停留在APP中的时间更多了,是在提高用户粘性;从体验上说,APP体验是要比H5好的。引导未下载用户下载APP,可以增加我们的用户量。

上面其实分别解释了 什么是唤端 以及 为什么要唤端,也就是 3W法则 中的 What 和 Why,那么接下来我们就要聊一聊 How 了,也就是 如何唤端

        

Laravel:如何让用户使用电子邮件或用户名登录

Laravel默认只允许用户使用其电子邮件地址登录。现在,如果要让您的用户使用电子邮件甚至用户名登录,该怎么办?

为此,您只需要更改Laravel默认身份验证代码中的某些代码即可。

开始吧。我认为您已经设置了Laravel项目并迁移了Laravel默认身份验证。如果您还没有编写命令php artisan make:auth,那么请执行php artisan migrate

最后更新于 2020年8月29日 …

单个域名下浏览器Cookie限制个数为多少

起因

去网上搜了下关于Cookie的介绍,看了好几篇都长得很一样,阉割一下内容不外乎说是"不同浏览器限制cookie数不同,大致在30-50这个范围,(前缀)浏览器允许Cookie多达4KB左右,包括名、值、等号"。

我还在上学那会儿,包括后面毕业后工作一段时间,我也没有特别去关注过这个话题,基本上如果面试官问到我了,也就把网上知道的这些讲了一下。

今年的遭遇给了我思考的时间特别多,最近我又重新去仔细读了下楼上那句话,我发现我读不懂了,第一个,我看的资料并不是特别权威的,也都是网上的博客帖子,对浏览器限制30-50个这个范围产生了一个质疑,是真的吗?第二个是允许多达4KB左右,就很迷糊,到底是一个域名下所有的Cookie加起来的值是4KB左右,还是说单独的Cookie的一个Name所表示的信息它可以是4KB左右,这让我很迷啊。

一行代码实现网页暗黑模式

随着 iOS 13 暗黑模式的发布,前端又要开始忙适配了。那么有没有一劳永逸的方法呢?当然是有的,往下看:

1
2
3
html {
    filter: invert(100%) hue-rotate(180deg);
}

就是这么简单,点击下面的按钮尝试一下吧


加速你的laravel框架运行, 教你如何减少服务提供者的启动.

Laravel有一个很强大的功能,就是服务提供者,它使得开发者能很容易的便能调用各种服务,但这也使得框架变得臃肿,今天就教大家如何优化各种不必要的服务提供者.

  • 找到不需要启动的服务提供者. 执行php artisan package:discover或者composer dump-auto查看我们引导了什么服务提供者. 
  • 从这里可以看到我们所有自动启动的外部服务提供者,我们可以优化其中一些,
    • 比如encore/laravel-admin是一个后台,但实际上我们每一次请求都会启动这个,所以我们只需要判断url中出现admin才启动这个服务
    • 比如intervention/image实际上是一个图片处理包,我们也不需要每一次请求都启动它,只需要压缩,操作图片时才启动这个包,这时候就可以写一个Service类,在类的构造方式启动这个服务
  • 首先我们想要排除某个服务提供者,把它加入项目根目录下composer.json文件中的extra.laravel.dont-discover的数组中即可 
  • 如果我们不启动这些服务,但又使用的话,这时候就会出现不可意料的结果
  • 所以,这时候我们就需要按需启动服务提供者.比如只有在url包含有admin才启动encore/laravel-admin
  • 首先我们先查看这个包的根目录下的composer.json文件 
        

Laravel 登录失败次数限制

在用户身份验证的情况下,Laravel 具有内置的身份验证系统。我们可以根据要求轻松修改它。身份验证中包含的功能之一是Throttling.

为什么我们需要throttling保护?

基本上,throttling是用来保护暴力攻击的。它将在一定时间内检查登录尝试。在短登录中,throttling会计算用户或机器人尝试失败的登录尝试次数。

使用自定义登录实现限制

默认情况下,在内置身份验证控制器中实现限制。但是,如果我们需要实现它到自定义登录呢?

实现自定义登录限制非常容易。首先,我们必须将ThrottlesLogins trait包含到您的控制器中。

use Illuminate\Foundation\Auth\ThrottlesLogins;

现在,将此ThrottlesLogins trait 加到控制器中。

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Foundation\Auth\ThrottlesLogins;

class AuthController extends Controller
{
    use ThrottlesLogins;

    ......

现在转到用于对用户进行身份验证的方法。在我的例子中,我使用了 login() POST 方法。并粘贴以下代码:

public function login(Request $request)
{
    // Authenticate 

一文详解 PHP 8 的新特性

 

PHP 8 将于 2020 年 11 月 26 日发布。这是一个新的主要版本,这意味着它将引入一些突破性的更改,以及许多新功能和性能改进。现在 PHP 8 在功能冻结中,这意味着不能再添加任何新功能了。

由于重大更改,您需要在代码中进行一些更改才能在 PHP 8 上运行。但是,如果您已经跟上最新版本,升级应该不会太难,因为大多数重大更改以前在 7.* 版本中已弃用。别担心,所有这些弃用都列在这篇文章中。

除了突破性变化外,PHP 8 还带来了一系列不错的新功能,如 JIT 编译器、联合类型、attributes等。

最后更新于 2020年12月5日 …

        

16张图入门Nginx——(前端够用,运维入门)

小林经过层层面试,终于进入一家一线互联网公司。有一天,她的mentor给她布置了一个任务,让她配置一下nginx,小林是一脸懵逼,您说啥?nginx是啥?心里一万只草泥马呼啸而过,但是坚强的小林没有放弃,准备系统的了解一下nginx,然后开启了打怪升级的道路。

对于Nginx的学习,小林主要从六部分进行:基础、原理、常用命令、配置文件、用途及相关计算,由浅入深,层层递进,最终达到前端够用、运维入门的效果。希望通过本博文帮助不懂Nginx的同学快速学习Nginx。

只要一行代码,实现十种 CSS 经典布局

页面布局是样式开发的第一步,也是 CSS 最重要的功能之一。

常用的页面布局,其实就那么几个。下面我会介绍5个经典布局,只要掌握了它们,就能应对绝大多数常规页面。

这几个布局都是自适应的,自动适配桌面设备和移动设备。代码实现很简单,核心代码只有一行,有很大的学习价值,内容也很实用。