您现在的位置是:首页 > 网站制作 > 网站建设网站建设

linux 上运行Thinkphp提示权限问题

胜于蓝2019-07-30【网站建设】人已围观

简介简述
TP部署在linux会有目录权限问题,这个我想很多人都已经很熟悉了,除非你还没接触过tp或者没有将它部署在linux的经历,当然不止TP,只要框架里面目录涉及到自由写的权限方面的

简述BtI胜于蓝|优秀个人博客
TP部署在linux会有目录权限问题,这个我想很多人都已经很熟悉了,除非你还没接触过tp或者没有将它部署在linux的经历,当然不止TP,只要框架里面目录涉及到自由写的权限方面的都需要去给对应的目录给予相应的权限

然而今天遇到了一个新问题,就是runtime目录已经给予了777权限了,还是无法写入缓存文件的问题,这种问题在网上搜的话也不会有太多收获,因为百分之九十九都是说:chmod -R 777 runtime,当然,这个答案在初步阶段是没有问题的,但是现在是执行了这个命令后还是提示无权限,这就有点尴尬了,思考了几分钟后将同一套代码放在另一台linux服务器(暂且叫他服务器B)上调试(nginx+php 两台服务器是一样),在服务器B给相关目录赋予权限后,代码运行正常,因此可以断定此问题跟代码无关,只能从其他方面分析。BtI胜于蓝|优秀个人博客

 BtI胜于蓝|优秀个人博客

于是又在网上搜索了半天关于linux权限方面的东西,最后终于解决。原因是linux系统有这样一个东西: SELinuxBtI胜于蓝|优秀个人博客

 BtI胜于蓝|优秀个人博客

SELinux是安全增强型 Linux(Security-Enhanced Linux)的简称,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。BtI胜于蓝|优秀个人博客

 BtI胜于蓝|优秀个人博客

DAC:BtI胜于蓝|优秀个人博客

 BtI胜于蓝|优秀个人博客

在没有使用 SELinux 的操作系统中,决定一个资源是否能被访问的因素是:某个资源是否拥有对应用户的权限(读、写、执行)。BtI胜于蓝|优秀个人博客

只要访问这个资源的进程符合以上的条件就可以被访问。BtI胜于蓝|优秀个人博客

而最致命问题是,root 用户不受任何管制,系统上任何资源都可以无限制地访问。BtI胜于蓝|优秀个人博客

这种权限管理机制的主体是用户,也称为自主访问控制(DAC)。BtI胜于蓝|优秀个人博客

 BtI胜于蓝|优秀个人博客

MAC:BtI胜于蓝|优秀个人博客

在使用了 SELinux 的操作系统中,决定一个资源是否能被访问的因素除了上述因素之外,还需要判断每一类进程是否拥有对某一类资源的访问权限。BtI胜于蓝|优秀个人博客

这样一来,即使进程是以 root 身份运行的,也需要判断这个进程的类型以及允许访问的资源类型才能决定是否允许访问某个资源。进程的活动空间也可以被压缩到最小。BtI胜于蓝|优秀个人博客

即使是以 root 身份运行的服务进程,一般也只能访问到它所需要的资源。即使程序出了漏洞,影响范围也只有在其允许访问的资源范围内。安全性大大增加。BtI胜于蓝|优秀个人博客

这种权限管理机制的主体是进程,也称为强制访问控制(MAC)。BtI胜于蓝|优秀个人博客

而 MAC 又细分为了两种方式,一种叫类别安全(MCS)模式,另一种叫多级安全(MLS)模式。BtI胜于蓝|优秀个人博客

 BtI胜于蓝|优秀个人博客

更多介绍可自行搜索,我想这个东西做运维的应该比较熟悉,这里不再多说。这里我们要做的就是关闭这个东西BtI胜于蓝|优秀个人博客


 

代码区

  1. 修改/etc/selinux/config 文件BtI胜于蓝|优秀个人博客
    BtI胜于蓝|优秀个人博客
      将SELINUX=enforcing改为SELINUX=disabledBtI胜于蓝|优秀个人博客
    BtI胜于蓝|优秀个人博客
      重启机器即可BtI胜于蓝|优秀个人博客

重启后代码运行正常,完美解决。BtI胜于蓝|优秀个人博客

Tags:

很赞哦! ()

文章评论

当前时间

合作加盟

  • 快钱POSS机
  • 费率:0.038%(刷1万=38元手续费)
  • 单笔最高刷卡金额:5万
  • 单月最高刷卡金额:600万

快钱代理公告

  • 凡事扫码代理必须实名认证
  • 实名认证后才可拉进代理微信群
  • 代理微信群有相关活动政策等

站点信息

  • 建站时间:2018-10-24
  • 网站程序:帝国CMS7.5
  • 主题模板《今夕何夕》
  • 文章统计986篇文章
  • 标签管理标签云
  • 统计数据百度统计
  • 微信公众号:扫描二维码,关注我们