php 函数 file_exits、复制、shell_exec 不能在一台机器上工作但相同的代码在不同的机器上工作

php functions file_exits, copy, shell_exec not working on one machine but same code working on different machine

我是一台 Centos 7 机器,我在上面配置了 PHP Apache 和 Slim Framework。

检查文件是否存在并将代码复制到目录中的简单代码在其中一台机器上运行良好,但在另一台机器上运行不正常。真的很奇怪。

其实我是通过Apache访问API来触发这个功能的。

函数像 shell_exec 总是 return 0 复制功能也不起作用 file_exists 也不起作用。

任何帮助或线索为什么这是错误的或调试此问题。

感谢大家的帮助。

问题是文件权限问题。 原因是我执行的所有上述功能都在文件中。由于文件对不同的用户有不同的权限。

因此,如果我从浏览器中点击 URL,那是通过 "Apache" 没有文件夹执行权限的用户来访问文件和读取文件的权限。

简而言之

sudo chmod +rx file

sudo chmod +x "All the directory structure"