doudizhu2222 2016-03-16 12:48
浏览 63
已采纳

Ubuntu - php chmod()在创建副本后不更改文件权限

I have the following code running on ubuntu,apache,php

if (!file_exists(THIS_DIR."DEFINE.php")) {
    copy(THIS_DIR."DEFINE.default.php",THIS_DIR."DEFINE.php");
    chmod(THIS_DIR."DEFINE.php",777);
}

after this run this code, I check the file in terminal:

$ ls -l DEFINE*
-rwxrwxrwx 1 www-data www-data 353 2015-11-25 13:28 DEFINE.default.php
-r----x--t 1 www-data www-data 353 2016-03-16 12:44 DEFINE.php

As u can see the file is created, own by the apache process, but chmod didn't work, and the file cannot be edited by the apache process.

Why is that?

The code works on my win dev env, how can I make it work on Ubuntu

  • 写回答

1条回答 默认 最新

  • douji6896 2016-03-16 12:57
    关注

    Try below its worked for me:

    chmod(THIS_DIR."DEFINE.php",0777);

    instead

    chmod(THIS_DIR."DEFINE.php",777);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?