位置: 编程技术 - 正文

理清PHP在Linxu下执行时的文件权限方法(php.ini详解)

编辑:rootadmin

推荐整理分享理清PHP在Linxu下执行时的文件权限方法(php.ini详解),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php llvm,phpinclude,php cli,php limit,php.ini详解,phplint,php linq,php处理请求的流程,内容如对您有帮助,希望把文章链接给更多的朋友!

一、文件权限及所属

1、文件有三种类型的权限,为了方便期间,可以用数字来代替,这样可以通过数字的加减,用一个数字就能标识这个文件的权限了,例如7=4+2+1,表示读写执行3个权限都有,6=4+2,表示有读写权限没有执行权限等等

2、联想web应用的rbac权限管理等,linux下同样有用户权限的管理,用户有用户名和用户组,一般创建用户时同时会创建同名的用户所属组。

先root账号登录随便新建一个目录和一个文件

查看时会发现:

先看上方蓝色的部分,第一位为标识符,去掉第一位,后面每三位分隔,以abc文件夹为例:d | rws | r-x | r-x

所以abc文件夹中表示owner拥有rwx(7),group拥有rx(5),other拥有rx(5)。

同样上方文件中红色的部分,依次为所有者的名称和所属组的名称,也就是abc文件夹的所有者为root,所属组为root。此时:

a、如果是root用户来访问这个abc文件夹,相当与owner,拥有7的权限

b、如果一个新的用户名test用户组为root来访问abc文件夹,则相当于group,拥有5的权限

c、如果一个新的用户名test用户组为test的来访问abc文件夹,则相当与other,拥有5的权限

二、文件各权限的作用

本来还想边测试边说,但是太麻烦了,直接说结果吧。可以自己新建一个用户,然后修改权限来自己测试下。

1、目录

  a、进入目录,即cd命令,所需要的权限为执行权限(x)

  b、查看目录内的文件,即ls命令,需要的权限为读取权限(r)

  c、创建删除目录内的文件夹/文件,即mkdir/touch命名,需要的权限为写如权限(w)

顺便说下目录只影响下一级的,隔代不影响,好比一个目录abc/sub/,如果abc没有w权限,但sub有w权限,则可以在sub中创建文件,当然abc也需要有x权限,否则都进不去更不用说创建了,但只要能进去(可以通过切换root管理员的方法),就不会再受abc的影响,只会受sub的影响。

一般我们目录会给5(rx)的权限,也就是读取和执行权限,只有图片上传或缓存等目录需要创建的才会给7(rwx)的权限

2、文件

理清PHP在Linxu下执行时的文件权限方法(php.ini详解)

  a、文件打开,可以用cat/vim命令打开,所需权限为读取权限(r)

  b、文件修改,可以用cat/vim命令打开并保存,所需权限为写入权限(w)

  c、文件执行,可以直接./abc.out等执行,所需要权限为执行权限(x)

这里需要说明的的是php(或者shell等)无论是命令行执行还是web端执行,名为执行,实际上是读取文件到php内核中取解析,所以只要有读取权限(r)就可以。

一般我们文件会给4(r)权限,也就是读取权限,只有日志、缓存等需要向文件中写入内容的才会给6(rx)权限

之所以上方没有说,、权限,而仅仅是是说单个的权限,是因为你的网站目录所属的权限不能确保与执行时所用的用户什么关系,也就是说执行时的用户可能是owner、可能是group也可能是other

三、php执行时的权限

我们自己在ssh连接linux操作时必须要有个用户名才能登录操作,同样php要想处理php相关的文件,也是在某个用户下操作的,而用户是在哪里创建或定义的呢,一般会是在安装php环境时创建的,例如apache,nginx等环境都会默认创建用户和用户组,而php的读取时就用此用户来读取,可以通过查看配置文件来确认:

或者是通过命名查看进程:

以apache为例会显示:

第一行就是显示的哪个用户在执行它,主要看非root下的。上方说明是www用户在运行apache进程来处理php文件。

这里需要注意的是,如果有安装php-pfm,则应该还需要查看php-pfm执行时的用户名及用户组。(没有安装,所以没实践过)

默认的可能是nobody或者apache等其它的用户及用户组,上方是已修改过的。此时应该在网站目录中用ls-all来确认下网站文件是属于哪个用户,分几种情况说明下吧:

a、例如网站所有者是这样:

网站所有者为www,而php执行者也为www,那说明是具有owner权限,上方system文件夹中中的根本不起作用,只要是7xx就会以7(rwx)的权限来执行。

b、如果网站所有者是这样:

网站所有者为test,所属组为www,而php执行者为www,执行组为www,那说明是说在同一组中,具有group权限,上方system文件夹中中的7和5不起作用,只要是x5x就会以5(rx)的权限来执行。

c、如果网站所有者是这样:

网站所有者为test,所属组为test,而php执行者为www,执行组为www,那说明是说根本没什么关系,具有other权限,上方system文件夹中中的不起作用,只要是xx5就会以5(rx)的权限来执行。

所以不能简单的说修改权限为,什么的,还需要确认程序的执行者和网站的所有者才能确定权限。

目前好多集成环境为了省事(嗯,lanmpv3等),将php的执行权限和网站所在目录都设置为www,此时一般创建完目录后为,创建文件后为,当php执行时,起作用的目录权限为7(所有目录拥有创建删除权限)和文件权限6(所有文件具有写权限),这种是不是挺不安全的?正常应该是目录为5,文件为4,当有特殊需求时才将权限设为7。如果出现上方说的这种情况,修改的方法一是修改apache/nginx的用户和用户组,二是修改网站文件的所有者和所有组这两个方向来修改,以确保网站的安全。

以上,只是基础的权限说明。

以上这篇理清PHP在Linxu下执行时的文件权限方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例 本文实例讲述了PHP基于正则批量替换Img中src内容实现获取缩略图的功能。分享给大家供大家参考,具体如下:这里PHP用正则批量替换Img中src内容,实现获

PHP实现删除多重数组对象属性并重新赋值的方法 本文实例讲述了PHP实现删除多重数组对象属性并重新赋值的方法。分享给大家供大家参考,具体如下:实例:sphinx搜索出来的结果,要去掉某个属性值

php利用ffmpeg提取视频中音频与视频画面的方法详解 前言FFmpeg的名称来自MPEG视频编码标准,前面的FF代表FastForward,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

标签: php.ini详解

本文链接地址:https://www.jiuchutong.com/biancheng/290369.html 转载请保留说明!

上一篇:PHP框架自动加载类文件原理详解(php 自动加载)

下一篇:PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例(php基于正则批量输出)

  • 工衣工帽清洗费税率是多少
  • 购买土地缴纳的费用
  • 增值税一般纳税人证明文件
  • 公司车辆过户给个人车牌可以保留吗
  • 股权转让后企业注销个人所得税怎么处理
  • 已交税金是什么类
  • 开立一般户需要基本户开户行许可证吗
  • 电子承兑到期怎么操作流程
  • 交易性金融资产的账务处理
  • 子公司对母公司的责任
  • 会计中预付款余额是什么
  • 房屋中介机构可以资金托管吗
  • 发票确认平台勾选步骤
  • 金蝶专业版二级科目设置
  • 固定资产加速折旧法
  • 正常经营损失
  • 超市送现金券怎么做账
  • 发工资四舍五入可以吗
  • 社保发票是普票还是专票
  • 农产品收购发票上的买价含税吗
  • 土地使用税级别划分标准
  • 月底结账哪些科目有余额
  • 退役士兵增值税优惠申报方法
  • 盈亏平衡点定价法例题及答案
  • 购进的货物用于赠送
  • 公司法人借款给公司怎么取出来
  • 资产减值损失是什么类科目
  • 金税盘开票信息修改
  • 不超过500万元的固定资产
  • 出差补贴算工资薪金吗
  • 进项票少了怎么办
  • 企业所得税预缴申报
  • 预收账款什么时候确认
  • 矿产资源补偿费计入科目
  • 企业免租申请
  • php 微信公众号
  • 微信开发怎么实现
  • vue自定义指令生命周期
  • 出口退税率和进项税额
  • vue 快速上手
  • 研发费用算期间费用吗
  • 加班补贴费
  • 年终奖要计入工资吗
  • 织梦内容页模板修改
  • 临时工工资账务处理该怎么进行
  • 房屋租赁如何入账
  • 房地产公司分立 土地转移
  • 企业税负是否包含增值税
  • 其他未列明信息技术服务业
  • 红冲发票操作步骤
  • 补付预付账款账务处理分录
  • 去税务局核定税种多久生效
  • 小规模年末怎么做账
  • 代缴社保会计分录
  • 工会里的钱
  • 有进项无销项如何申报
  • 开一般户需要什么理由
  • sql以级联的方式删除表
  • FreeBSD下zfs: failed with error 6错误如何解决?
  • 电脑bios怎么关
  • freebsd 配置ip
  • linux工具包
  • linux whoami命令详解
  • gnaupdaemon.exe是什么
  • 如何判断win7
  • win8开机进不了桌面
  • cocos2dx运行原理
  • Node.js开启Https的实践详解
  • opencv python
  • bootstrap怎么学
  • spiral框架
  • bat文件加密bat解密脚本
  • JavaScript中的复杂数据类型又称为
  • jquery获取document对象
  • python 正则 \s
  • flask框架下使用scrapy框架
  • 深入理解计算机系统 电子书
  • 税务登记没去登记会怎么处罚
  • 工本费每月都扣?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设