在系统中为nginx配置了umask为002,可为什么web上用php获取umask值变成了022呢?哪儿可设置的吗?麻烦知道的朋友指导下,谢谢!
备注:为对应的nginx用户设置了umask为002,在服务器里头切换到nginx用户直接touch或者mkdir创建的文件与文件夹权限都是正确的,但通过web的php脚本创建就有问题,查看了下umask,变成了022,问题应该就出在这(这条分析中关于nginx的都是有问题无意义的)
新增:目前已经将全局的umask配置成002了,Web中对应的用户(这个web对应的用户是我在/etc/php-fpm.conf中设置的用户)也进行了设置并且在服务器中直接touch或者mkdir创建的文件与文件夹权限都是正确的
查到了这么一个有点相关的资料,但系统中/etc/init/下没有php5-fpm.conf这个文件,加在/etc/nginx/php5-conf中提示umask不识别,直接在/rtc/init/下创建该文件,把这个主题里的文本修改对应的参数加入其中也无效(http://stackoverflow.com/questions/21248904/how-to-trace-where-php5-fpm-umask-settings-are-coming-from-on-ubuntu)
最终以
system user
身份向系统发起调用的的 php-fpm 。而不是 nginx 。修改nginx配置没有作用的。/etc/php-fpm的安装发生不同,那么配置文件的位置也不一样的。你需要自己找到php-fpm的配置文件。
可以通过产看 php-fpm 进程状态,来查看配置文件
ps aux | grep php-fpm
就可以看出 php-fpm 当前所使用的配置文件。
你随便创建一个配置文件,并不会被程序读取生效。
弄清楚这些再试试吧。祝你好运。
废一句话,如今像
七牛
,又拍
,亚马逊S3
这些很好用的存储云,为什么还要自己往服务器上传文件呢?(小公司或个人在静态资源管理上还在自己用低劣的办法,那实在是跟不上时代的脚步了)
....
当人 第三方 云存储也不是 尽善尽美,适合所有用户群,但是对于个人或者中小团体。非常值得试用。