PHP mkdir 不工作——可能与 Mac 本地主机有关

标签 php macos apache mkdir

我正在尝试在 PHP 脚本中执行以下代码:

if (!is_dir($path . 'channel-partners/html/intro-letter/' . $name_url)) {
      mkdir($path . 'channel-partners/html/intro-letter/' . $name_url, 0777, true);
}

$name_url 是运行时传入的字符串。当我尝试在 Mac 本地主机中执行此操作时,我获得了许可。我想知道问题是否不是我的脚本,而是 Apache 在我的 Mac 上的设置方式。我是否需要做一些特殊的事情来配置 Apache 以允许它创建文件和创建目录(此处未显示文件创建)?

最佳答案

运行 Apache 的用户或组需要拥有对父 DIR 的写入权限。 Mac 上 Apache 的默认安装在名为 _www 的用户和组下运行,因此

chgrp -R _www/the/parent/directory/here 应该可以完成这项工作。请参阅 man chmod man chown man chgrp 了解更多信息。

关于PHP mkdir 不工作——可能与 Mac 本地主机有关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14840660/

相关文章:

java - OS X sleep 后 Java 客户端无法访问 Solr 服务器

php - 缩短 URL 以仅包含 get 请求?

无法加载 Apache mod_ssl

java - 安卓 KeyPairGenerator + php openssl_public_encrypt

objective-c - 将 Objective-C 终端应用程序从 Mac OS X 移植到 Linux?

ssl - Nginx/php-fpm开启HTTPS后无法执行PHP文件

macos - Applescript iTunes 词典解释

php - 没有这样的文件或目录 : AH02454: FCGI: attempt to connect to Unix domain socket/var/run/php/php5. 6-fpm.sock (*) failed

php - 根据条件更改 <td> 颜色

php - 无法使用 php codeigniter 在 mysql 数据库中上传文件