laravel5.8使用总结和比较

一、踩坑

laravel目前为止的坑

安装的坑

1、5.8对于PHP的版本要求7.0以上
2、要求php至少要安装八个要求的拓展
3、即使使用github下载,安装还是需要使用composer,使用国内镜像速度相对快一丢
4、所使用的nginx还是apache得配置ssl模块,php安装openssl拓展,否则使用镜像https还是获取不了
5、安装完成后还需要启动内置开发服务器,否则500。php artisan serve

装完调试的坑

(1)权限的坑
在给登录的系统用户归属到nginx用户组下,又给予项目775权限,依然写访问不了一些文件。主要是因为我之前的php用户组是www,而nginx的用户组是www-data,更改php用户组必定牵扯到一一堆权限的更改。www用户需追加归属到www-data用户组或者storge目录直接给777权限
(2)500服务器error
nginx或者apache的入口需安装手册的配置,使用@string变量
(3)404error
laravel已经定义了404错误等配置,如nginx也定义的话显然比laravel执行层级要高,所以需将nginx配置的404判断注释。

使用过程的坑

(1)命名空间不存在,除了打错路径,也有可能是你文件少了.php后缀
(2)更改了路由一直错误不生效,需要清除下路由缓存php artisan route:cache
(3)同2状况一样,配置更改了也要清除缓存php artisan config:cache
(4)session和cookie框架有配置token保护,所以模板传值还需要加个" _token: “{{csrf_token()}}”
(5)laravel的路由表达式使用正斜‘/’,而路由地址使用反斜‘\’,操作名引用使用@
(6)模板使用路径是后级路径是“.”而不是‘/’

二、Laravel5和TP5

(1)laravel5 (2)TP5

使用手册

(1)laravel到目前为止感觉手册写的挺详细的(√)
(2)tp虽然也能理解,但有的地方太过简介了

下载安装

(1)laravel的安装要求真的很多,虽然现在有一键安装和专属虚拟机,但手动还是安装的挺麻烦
(2)tp不需要镜像,安装过程相较之下和谐(√)

环境变量配置

(1)laravel的环境配置使用.env重写config配置文件,直接=号赋值看着不要太爽。也就意味着换环境很简单1只需要配置多个.env手动切换,2使用nginx配置进行切换(√)
(2)tp的环境配置则需要手动配置逻辑上多个config环境,没有.env重写

中间件拦截

(1)laravel使用自带中间件类配合路由配置,进行访问权限配置很轻松
(2)tp纯路由配置使用起来稍显复杂,但是功能也很齐全

防跨站请求CSRF

(1)laravel所有的表单提交需带{{ csrf_field() }}参数,ajax则" _token: “{{csrf_token()}}”。接收时会自动验证。(√)
(2)tp则是表单令牌,表单添加{:token()},同时验证器还需要加验证|token

三、error寻找途径总结

  • 检查环境运行状态(nginx、php等)
  • 开启debug模式
  • F12前台查看console,后台看respond结果和错误码等等
  • 查看服务器日志文件等
  • 查看所使用框架或技术的技术点特性(例如laravel对session和cookie进行统一加密,如掺杂原生则凉)
  • 如使用最新版应查看版本更新日志有无大变化(例如我之前使用weui时,在1.0开始命令方式大变化)
  • 检查用户权限及归属
  • 查看所使用服务商的使用说明
  • 检查防火墙及端口
  • 清楚缓存重新运行
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章