参考了PHP 全局使用 Laravel 辅助函数 dd中的内容,只是针对我自己配置过程中出现的问题进行一次总结。

Composer的COMPOSER_HOME环境变量不同

根据composer官方说明,如果系统没有COMPOSER_HOME环境变量,它在各个系统上的默认值分别为:*nix /home//.composer。

OSX /Users//.composer。

Windows C:\Users\\AppData\Roaming\Composer。

但是我的却不是。我的本级默认地址为~/.cache/composer,所以最简单的方法是直接使用了export进行导入export COMPOSER_HOME=$HOME/.composer #将这行加入到.bashrc或.bash_profile或.zshrc

开发环境不同

原文中使用的是vagrant+homestead开发环境,而我本地使用的是vagrant+lnmp的一键安装包,区别就在于homestead环境的登录用户及nginx用户都是vagrant。而我本机的登录用户为vagrant,而nginx用户为www。

全局composer安装后我将auto_prepend_file = /home/vagrant/.composer/vendor/autoload.php加入到php.ini中发现报如下错误:Warning: Unknown: failed to open stream: Permission denied in Unknown on line 0

Fatal error: Unknown: Failed opening required '/home/vagrant/.composer/vendor/autoload.php' (include_path='.:/usr/local/php/lib/php') in Unknown on line 0

但是我在CLI下执行一个test.php程序发现是可以正常调用的。所以第一反应也是www用户没有权限导致。于是我将www用户加入到了vagrant用户组:usermod -a G vagrant www

到这里以为大功告成,没想到问题依旧如上。

参考了网上的大多数教程,也包括把autoload.php修改为777权限依然不行。最后的最后我执行下面的命令:[root@localhost home]# ll

total 0

drwx------. 6 vagrant vagrant 167 Oct 11 17:12 vagrant

看到这里我也是醉了,因为/home/vagrant的g和o都没有权限,所以导致nginx的www用户都进入不了/home/vagrant目录所以才会报出Permission denied。于是我直接chmod 750 vagrant

其是最根本的原因依然是登录用户与nginx执行用户不一样导致权限问题。不解的是不知道为什么useradd添加的用户家目录是700。猜测可能是和umask有关

---update---

查了资料发现之所以用户的家目录权限为700是因为在/etc/login.defs中有有一个配置UMASK 077 #用户家目录建立的 umask ,因此权限会是 700

所以最终的权限为777-077=700

slim php dd model,PHP全局使用Laravel辅助函数dump和dd相关推荐

  1. slim php dd model,第二十四节,TensorFlow下slim库函数的使用以及使用VGG网络进行预训练、迁移学习(附代码)...

    在介绍这一节之前,需要你对slim模型库有一些基本了解,具体可以参考第二十二节,TensorFlow中的图片分类模型库slim的使用.数据集处理,这一节我们会详细介绍slim模型库下面的一些函数的使用 ...

  2. slim php dd model,Slim PHP框架

    Slim是一个微框架. 有一套和Lavarel很相似的路由机制. 有一个很详细的教程,详细到把基础request变量都说得很详细,我会觉得这么微的框架还要谈及这么琐碎的功能,那它本身可能真没什么功能. ...

  3. linux下用dd命令拷贝硬盘黑屏,linux下用dd命令拷贝硬盘

    最近所做的项目涉及到系统的"烧写",在ARM中,一般用flash,容量也不大,直接用erase操作即可.但在x86上,硬盘动辄上G,安装一个发行版本的Linux,也得3GB~4GB ...

  4. linux dd安装系统,通过DD命令安装Windows,并介绍几款DD镜像包

    Loading... 原则上仅适用于独立服务器,并未添加其他虚拟化驱动 online/oneprovider/hetzner的服务器已经过测试可以正常使用 首先进入服务器的救援系统 进入救援系统后使用 ...

  5. oracle dd if=/dev/zero of=/dev,【转】dd if=/dev/zero of=的含义是什么?Linux 下的dd命令使用详解...

    一.dd命令的解释 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512:c=1:k=1024:w=2 参数注释: 1. ...

  6. php array pluck,laravel辅助函数-数组

    array_add() array_add 函数添加给定键值对到数组 -- 如果给定键不存在的话: $array = array_add(['name' => 'Desk'], 'price', ...

  7. dd linux 格式化u盘启动盘_Ubuntu使用dd命令制作U盘系统启动盘

    本帖最后由 speedturtle 于 2018-7-13 23:12 编辑 Ubuntu使用dd命令制作U盘系统启动盘 [dd命令是比较推荐的一种Linux环境中制作U盘启动盘的方式,无需安装额外的 ...

  8. php优雅输出,TP5 如何像Laravel dd()一样优雅输出

    简介 Laravel 框架我们都知道调试使用dd() 函数能够很优雅的看到输出,那么TP5,怎么一样优雅的输出呢 步骤: 切换到当前应用目录:执行以下命令 composer require symfo ...

  9. java+jna+DD实现全局键鼠驱动级模拟

    java中的Robot类中自带了模拟鼠标和键盘的相关事件,但是这样的模拟带有一定的局限性,那么如何实现功能更加强大的模拟呢? 运行环境 IDEA+JDK1.8(64位)+Maven 请以管理员身份运行 ...

最新文章

  1. 用C#开发的双色球走势图(原创)值得园友拥有(二)接上一篇
  2. 【渝粤教育】电大中专电子商务网站建设与维护 (8)作业 题库
  3. python wireshark_用python编写脚本从wireshark导出的数据文件中提取数据
  4. TV Distortion Bundle mac - AE画面像素破损信号干扰失真插件
  5. 一道头条算法题,一种不为人知的解法!
  6. filters.revealTrans.Transition用法
  7. 数据库事务的四大特性以及事务的隔离级别-与-Spring事务传播机制隔离级别
  8. 【跃迁之路】【523天】程序员高效学习方法论探索系列(实验阶段280-2018.07.13)...
  9. OpenCV3编程入门(毛星云)读书笔记(一)
  10. Kotlin Primer·第二章·基本语法
  11. STM32MP157C-DK2 开机测试
  12. python scapy 抓包_Python3下基于Scapy库完成网卡抓包解析
  13. 我们的爱、相约在下辈子。这辈子、记得忘了我、(看完我哭了、一定要看)
  14. 3d计算机原理,3d的技术原理有哪些
  15. C# 实时监控线程类
  16. VS Code C++ 代码格式化方法(clang-format)
  17. 服务器禁止访问文件,服务器文件夹访问权限设置 控制访问权限方法
  18. 用爬虫批量采集阿里巴巴1688商品数据
  19. 让你熟悉 from gne import GeneralNewsExtractor是怎么样的
  20. Flutter桌面应用开发

热门文章

  1. varchar和Nvarchar区别 ----转载
  2. 数据库常用的基本操作
  3. CNDO-INTGRL-SS-BINTGS-斯莱特轨道指数--- 精确方法
  4. 9.1 基于内容的推荐系统-机器学习笔记-斯坦福吴恩达教授
  5. linux下的各种系统错误errno描述一览
  6. 六 运行级别调整增加启动项
  7. c语言中dfs用pos做参数,使用DFS解决8-Puzzle
  8. 【信号发生器】基于quartusii的信号发生器的设计
  9. µC/OS-II和µC/OS-III比较
  10. CentOS7.1 KVM虚拟化之虚拟机添加磁盘