laravel框架的重定向问题以及csrf验证问题

1. 在laravel框架安装成功后,你可能会遇见在路由访问PHP时,除了默认路由 “\” ,可以访问到主界面,即显示 laravel5的界面。其余路由全部404,

      导致这个问题出现的原因是laravel框架重定向问题,只能定向到public下的index文件。所以其余路由访问都为404。
      解决这个的问题方发也很简单,找到你本项目的laravel框架配置文件(laravel.conf)文件
      该配置文件是在你本地服务器下自动生成的配置文件。在nfinx/conf文件目录下,该目录下可能会存在多个laravel配置文件,如rewrite、vhosts、vhosts/rewrite文件夹下,可以分别输入以下代码进行测试。

location / {
   try_files $uri $uri/ /index.php?$query_string;
   if (!-e $request_filename){ 
     rewrite ^/(.*) /index.php last; 
  }
}
项目框架配置文件

2. 在laravel框架中,如果不做任何配置就进行post访问,会报错419,或者500

而出现这个问题的原因是laravel框架有csrf验证,

解决方发:

打开文件:app\Http\Middleware\VerifyCsrfToken.php

  1. 关闭全部csrf验证。
    在VerifyCsrfToken.php文件中加入以下代码,即关闭全部验证
 public function handle($request, Closure $next){

        if($request->method() == 'POST'){
            return $next($request);
        } 

        if ($request->method() == 'GET' || $this->tokensMatch($request)) {
            return $next($request);
        }

        throw new TokenMismatchException;
    }
  1. 关闭部分csrf验证
    在VerifyCsrfToken.php文件中进行修改$except属性,即关闭post请求的http://域名/v1/*,的csrf验证
 protected $except = [

        'v1/*'

    ];
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一. 说明 以下内容大部分引用Laravel China社区的文章 - 分享下团队的开发规范 ——《Laravel...
    knghlp508阅读 12,362评论 0 28
  • 一、框架概述 课程概述 laravel 4天(之前TP框架还是很大的区别)(国外框架) 在线教育平台 6天(lar...
    园草戒阅读 4,411评论 0 2
  • 一、框架概述 1、什么是框架? 框架是许多代码的集合,为项目开发提供了很多基础性的代码。例如常见的参数过滤,DB类...
    神经波阅读 10,552评论 0 3
  • 一、框架概述 课程概述 laravel 4天(之前TP框架还是很大的区别)(国外框架) 在线教育平台 6天(lar...
    我爱开发阅读 5,292评论 0 5
  • 介绍 Laravel 是一款 MVC架构、 目前最流行的 PHP框架。 Laravel的优点在于: 丰富的comp...
    那就远走阅读 12,463评论 3 18