由QEE应用生成器 想到的 — 目录权限问题
今天用了下QEE。 不得不说,生成程序还是挺实用的。
可是我是在linux下用的。。
然后。。问题出现了。。
在*/extended/qgenerator/application.php中 有这么一句:
chmod($target . $file, 0666);
将生成的目录权限改为666?
额。。可是在linux下面 。 通常除非root是没有权限这样做的。。
而通过copy或者mkdir这样创建的目录 ,所属用户/组是www-data
很显然, www-data这个组/用户。。 没有这个权限。。
如果要继续开发的话。。
没有权限。。
想了半天。。想到了两个解决办法。。
1. 手动更改他们的权限或者用户组吧
#递归将本目录下所有文件/夹所有者修改。。。
chown username:usergroup -R /path/to/application
2.或者php中用umark()这个函数
umark(0) #将这个目录权限改为777.。
看下这个函数:
umask() 函数改变当前的 umask。
umask() 将 PHP 的 umask 设定为 mask & 0777 并返回原来的 umask。当 PHP 被作为服务器模块使用时,在每个请求结束后 umask 会被恢复。注释:在多线程的服务器上尽量避免使用这个函数。创建文件后要改变其权限最好还是使用 chmod()。使用 umask() 会导致并发程序和服务器发生不可预知的情况,因为它们使用相同的 umask。
BJ。。
No related posts.
