将umask设置为0000 (或仅为0 )意味着新创build的文件或目录将不具有最初被撤销的特权。 换句话说,一个零的umask将导致所有文件被创build为0666或世界可写。 在umask为0时创build的目录将是0777 。

通常,当你看到umask(0) ,应该直接跟chmod()调用,以明确地将新创build的文件或目录所需的权限设置为世界可写以外的权限。

设置umask为零时要小心! 这可能是危险的,并且主要仅用于创build必须稍后由web服务器写入的文件,当web服务器作为不同的用户运行时,“真正的”用户也将需要能够修改所创build的文件由networking服务器。 否则,系统默认的umask很可能是像0022这样的文件,而不是文件所有者可写的。 在这种情况下,如果您以正常的用户帐户login到本机,则由PHP下的Web服务器创build的文件将不会被您写入。

而不是创build世界可写的文件,通常更好的办法是更明确地pipe理Web服务器正在写入的目录。 如果在目录中创build的文件应该具有特定的组权限,则可以build议在该目录上设置sgid位,以便其中的新文件inheritance组的所有权。 需要访问文件的用户应该是有权访问的组的成员。 这比创build世界可读的世界可写文件要安全得多。

php > umask(0); // Should get created as 666 php > touch('file1.txt'); // "2" perms revoked from group, others, gets created as 644 php > umask(022); php > touch('file2.txt'); // All revoked (2,4) from group, others, gets created as 600 php > umask(066); php > touch('file3.txt'); -rw-rw-rw- 1 me group 0 Aug 24 15:34 file1.txt -rw-r--r-- 1 me group 0 Aug 24 15:35 file2.txt -rw------- 1 me group 0 Aug 24 15:37 file3.txt

php目的,php umask(0)的目的是什么相关推荐

  1. 组建计算机网络目的三个,计算机网络实习目的

    从逻辑功能上看,计算机网络是以传输信息为基础目的,用通信线路将多个计算机连接起来的计算机系统的集合,一个计算机网络组成包括传输介质和通信设备. 计算机网络实习目的范文一: 实习目的和任务 学生通过实习 ...

  2. 关于发布DIPS的MVC项目的IIS 7.0环境配置的方法

    本人技术笨拙,今天在发布DIPS的MVC4.0项目,并部署到IIS上,遇到各种问题.在查询相关资料后,最终得以解决,所以想把这个过程记录下来. 注:DIPS为一种非关系型数据库 首先,需要安装和注册D ...

  3. 计算机设计目的和意义,程序设计的目的和意义.doc

    程序设计的目的和意义 一.程序设计的目的和意义 地籍测量程序设计旨在通过用VC++语言编写测量学中的一些基本计算公式的程序,巩固和掌握测量学的基本概念和基本技能,提高实际动手能力,并通过实际编程实现测 ...

  4. 删除项目的SVN信息 取消项目的SVN关联 简单粗暴

    一.概述 有时候我们copy一个项目,新生成的项目B会自带之前项目A的svn信息,我们就需要删除B项目所关联的svn信息,这里提供一种即简单又粗暴的方法,亲测可用. 二.方法步骤 1.新建文本文件 在 ...

  5. 计算机等级考试目的,计算机等级考试的目的是什么?二级Office最新版考试大纲...

    计算机技术的应用在我国各个领域发展迅速,为了适应知识经济和信息社会发展的需要,操作和应用计算机已成为人们必须掌握的一种基本技能.许多单位.部门已把掌握一定的计算机知识和应用技能作为人员聘用.职务晋升. ...

  6. ASM - 条件判断

    技术交流,DH讲解. 正式之前,我们看看寄存器和CPU的标志位: OD中的截图,下方的CPAZSTDO就是标志位. Delphi的FPU窗口,右边一列就是标志位. 为什么要给大家看标志位呢?因为ASM ...

  7. 184_刘发顺_Java核心编程

    Java核心编程 Java 技术栈: Java基础 Java面向对象:Java 是一种面向对象的语言,它对对象中的类.对象.继承.封装.多态.接口.包等均有很好的支持.为了简单起见,Java 只支持类 ...

  8. 187_陈易奇_Java核心编程

    第一周笔记 一.源代码中重要组成元素 public表示访问说明符,表面该类是一个公共类,可以控制其他对象对类成员的访问. class 用于声明一个类,其后跟的字符串是类的名称. static 表示该方 ...

  9. ARP攻击和防御实验

    准备知识: ARP数据包格式: 用wireshark抓取一个ARP广播包,内容如下: 以太网层目的MAC地址全f,代表广播,网络层ARP包目的MAC全0代表目的MAC未知. wireshark抓取一个 ...

最新文章

  1. 【算法】单源最短路径和任意两点最短路径总结(补增:SPFA)
  2. 33 个送给 Java 程序员的练手项目合集
  3. android仿高德地图透明黑字,Android 仿高德地图可拉伸的BottomSheet
  4. wireshark 十六进制过滤_CTF流量分析之wireshark使用
  5. 玩转iOS开发:iOS 8 新特性《UIVisualEffect》
  6. Web服务器性能压力测试工具
  7. sql server插入语句
  8. 前端实现Office在线预览 (一)
  9. Codeforces Round #322 (Div. 2) A. Vasya the Hipster 水题
  10. 基于torch学汪峰写歌词 聊天机器人 图像着色/生成 看图说话 字幕生成
  11. 服务器pe系统ghost系统安装教程,极速PE U盘安装GHOST系统详细图文教程
  12. XTP Python Api 接口编译
  13. 女人需谨记的十六条健康戒律
  14. 等保系列之——网络安全等级保护测评:工作流程及工作内容
  15. 金融量化交易场景下数据库如何改造?同花顺、弘源泰平真实案例分享
  16. element ui框架(准备)
  17. Java新手教程从入门到放弃从入门到精通(3)
  18. 【C语言】杨辉三角(等腰三角)
  19. 厦门大学“网宿杯“17届程序设计竞赛决赛(同步赛) #题解 #题目都超有趣呀
  20. 微信小程序支付java服务端集成采坑总结

热门文章

  1. Lucene学习总结之四:Lucene索引过程分析
  2. scala中使用Option、Some、None,避免使用null
  3. 自定义线程类中实例变量与其他线程共享与不共享
  4. 阿里妈妈品牌广告中的 NLP 算法实践
  5. struts2的action从request获取参数值的几种方式
  6. Linux中输入输出重定向和管道
  7. Linux经典实用的使用技巧33则和常用60个命令
  8. Python内置函数(62)——exec
  9. GitHub上README.md教程(copy)
  10. 初学swift笔记 枚举(七)