php设置文件权限
我们的服务器是这样做的:
php一般是以apache用户身份去执行的,把apache加入到存储你文件的父文件夹属组里去,然后改该父文件夹权限为775,这样属组成员就有写的权限,而apache属于这个组就可以改写该目录下所有文件的权限,当然,属组最好不要是root,你可以为该文件夹改个其它普通用户组。
改apache/php的运行用户方法不安全,不建议使用。
⑵ 求助;Linux下如何设置某个文件夹内的PHP文件为不可执行权限
linux
下的chmod
命令可以实现你想要的功能。
这是一个授权命令
简单的说
基本权限就3种
读
写
执行
r
w
x
4
2
1
chmod
666
文件夹名称
-R
-R
表示遍历这个文件夹所有文件跟目录
这样就可以设定所有用户对
这个文件夹以及这个文件夹下所有文件
只能进行读写操作
且不能执行。
chmod
333
文件夹名称
-R
这样这个文件夹就只剩
写跟可执行的权限
且无法读取。
或者可以使用
chmod
+x
文件夹名称
或者
-x
来设定
权限
可执行与不可执行
其他权限一样。
⑶ php网站文件目录权限如何开
将权限设置成777就可以了啊。chmod 777 【文件名】
“777”代表权限,对应rwdrwdrwd,从左往右第一位‘7’代表属主的权限对应第一组‘rwd’,r标识可以读,w代表可以写,x代表可以执行。
第二位‘7’代表属组的权限,第三位‘7’代表所有人的权限。例如只允许属主读写执行赋予700权限对应rwd权限。也可以使用a、u、字母表示权限,比如chmod a+x 【文件名】 是赋予任何人执行的权限,chmod a+r 【文件名】是赋予所有人读得权限,chmod a+w 【文件名】是赋予所有人写的权限,等等。
不过设置777不安全,最好设置成可读就可以了,744应该可以。
⑷ linux如何设置php创建文件的默认权限
可以使用php代码设置创建文件的umask值:
<?php
exec('touch /tmp/b1');$oldmask=umask(0);exec('touch /tmp/b2');
umask($oldmask);?>
参考:http://www.php.net/manual/zh/function.umask.php
⑸ 用PHP对文件夹进行访问权限设置
把这个文件夹放到网站根目录以外的目录,这样通过url就访问不到了。
然后用php来读取并输出文件里的内容,详细方法参考php支持断点续传用的代码。
⑹ 如果php需要在某文件夹下创建文件,请把该文件的权限全部设置:即可都可写和可执行777 什么意思 求指教
如果php需要在某文件夹下创建文件,请把该文件夹 <- 你这里漏了个字吧 的权限全部设置
linux系统下的权限管理模式,777表示所有用户都具有对该文件夹的完整权限。windows不要考虑这个问题。
有疑问请追问,没有请采纳
⑺ PHP写入文件权限问题
首先,fopen不是“写入文件”。
设777是文件系统的用户权限。php打开文件,除了受文件系统的限制,还受apache和php本身安全性限制。例如,apache限定了访问权限只限于/www,而你要操作/log的话,是不可能的,尽管/log里文件系统设了777。还有,在手册里fopen里有说“如果激活了
安全模式
或者
open_basedir
则会应用进一步的限制。”希望对你有帮助。
⑻ php以fastCGI的方式运行时文件系统权限问题及解决方法
在IIS7.0上以FastCGI方式配置好PHP运行环境,测试可以正常运行PHP程序后,将PHP程序部署上去,导入程序原来的数据和配置信息。很快就有问题出来啦下面我们就详细记录下。
今天准备将一个php
demo放在IIS下运行,网站在IIS下的配置是这样的:
应用程序池是集成模式下的.net
framework
2.0(2.0或4.0没什么关系,因为php以fastCGI的方式在跑),
应用程序池标识配置为IIS内置的NETWORKSERVICE,
使用的认证方式为匿名身份验证。
打开本地的网站,访问php页面,
出现了500错误。
好吧,是权限问题,最简单的解决办法是把C:的权限设成Everyone,
并允许完全控制:
重新访问php页面,成功了:
上面的方法是够简单,但也太不安全了,平时本地搭个demo这样做没问题,真正上线的时候,这样做迟早出问题的。
于是重新设置,把该目录下的只读权限赋给NETWRORKSERVICE帐号再试一下
不过问题还是没有解决,访问的时候,出现了401错误
错误信息中包括显示登录用户为匿名,检查了网站下的身份验证(再点击
匿名身份验证->编辑),原来网站默认情况下,在登录方法为匿名时,使用的默认登录用户为IUSR(就是我们看到的匿名登录用户了)
那么解决办法就是:
1.
将IUSR设置为C:的读权限,类似之前对NETWORKSERVICE的设置。
2.
或选择使用应用程序池标识即可。
经试验,方法1与2都成功。
Note:NETWORKSERVICE在IIS7中隶属于iis_iusers用户组,之前对NETWORKSERVICE的设置也可以改为对iis_iusers的设置,同样也可以解决问题,只是权限被进一步放宽了而已。
以上所述就是本文的全部内容了,希望大家能够喜欢。