【问题标题】:system() command inside a PHP script - calling a batch file...PHP 脚本中的 system() 命令 - 调用批处理文件...
【发布时间】:2014-07-07 22:08:07
【问题描述】:

我正在尝试在我的服务器中创建一个system('touch 1.test');
所以我打电话给systest.php

<?php
      system('touch 1.test');
?>

文件未创建。

通过命令行调用时完美运行:

/bin/php /public_html/systest.php

它会创建文件1.test

可能是权限错误吗?其他类型的安全问题?

有什么想法吗? 谢谢!

【问题讨论】:

  • 手动运行时它在哪里创建文件?当由网络服务器运行时,您希望它在哪里创建它?

标签: php linux permissions system


【解决方案1】:

如果要在其中创建文件的文件夹不属于 Apache 并且不可写,那么这将失败。

确保它具有正确的权限,或者它是在 apache 拥有或由 apache 创建的文件夹中完成的。

【讨论】:

  • 它不一定是 apache 拥有的,只需要它是可写的。
  • 但是如果它被 a​​pache 拥有,那么它可以被那个组写,如果不是,那么它必须被每个人都写
  • 从未听说过访问控制列表?
  • 我将文件指向可写区域,它解决了问题,谢谢你们!
猜你喜欢
  • 2015-10-11
  • 2015-09-12
  • 1970-01-01
  • 1970-01-01
  • 2011-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多