加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

理清PHP在Linxu下执行时的文件权限方法

发布时间:2021-01-21 17:24:20 所属栏目:编程 来源:网络整理
导读:一、文件权限及所属 1、文件有三种范例的权限,为了利便时代,可以用数字来取代,这样可以通过数字的加减,用一个数字就能标识这个文件的权限了,譬喻7=4+2+1,暗示读写执行3个权限都有,6=4+2,暗示有读写权限没有执行权限等等 2、遐想web应用的rbac权限管
副问题[/!--empirenews.page--]

一、文件权限及所属

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、文件

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

  b、文件修改,可以用cat/vim呼吁打开并生涯,所需权限为写入权限(w)

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

这里必要声名的的是php(可能shell等)无论是呼吁行执行照旧web端执行,名为执行,现实上是读取文件到php内核中取理会,以是只要有读取权限(r)就可以。

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

之以是上方没有说755,777、644权限,而仅仅是是说单个的权限,是由于你的网站目次所属的权限不能确保与执行时所用的用户什么相关,也就是说执行时的用户也许是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文件夹中755中的55基础不起浸染,只要是7xx就会以7(rwx)的权限来执行。

b、假如网站全部者是这样:

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

c、假如网站全部者是这样:

网站全部者为test,所属组为test,而php执行者为www,执行组为www,那声名是说基础没什么相关,具有other权限,上方system文件夹中755中的75不起浸染,只要是xx5就会以5(rx)的权限来执行。

以是不能简朴的说修改权限为755,644什么的,还必要确认措施的执行者和网站的全部者才气确定权限。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读