Drupal 7 - file.inc - file_put_contents(temporary://fileXXXXXX):无法打开流

Drupal 7 - file.inc - file_put_contents(temporary://fileXXXXXX): failed to open stream

使用 Mac OS X Yosemite,Apache,PHP 5.5.14,MySQL 5.6.19,Drupal 7.32

由于文件路径错误,Drupal 无法写入。错误的文件路径是 temporary://fileXXXXXX。我不明白为什么 Drupal 无法将 temporary:// 转换为 /tmp

我已经通过 Drupal admin 配置了临时文件目录 UI,并在数据库中确认了它的修改...

SELECT * FROM variable WHERE name LIKE '%temporary_path';
+---------------------+------------+
| name                | value      |
+---------------------+------------+
| file_temporary_path | s:4:"/tmp" |
+---------------------+------------+

...并清除缓存以防万一;然而,无济于事。我还确认了 /tmp 的权限以防万一:drwxrwxrwt.

同样,当使用我的数据库的新副本通过 git 切换回我的主分支时(SQL 从生产中转储)-问题仍然存在。

错误格式如下...

/.../includes/file.inc:1941 file_put_contents(temporary://fileXXXXXX): failed to open stream: "DrupalTemporaryStreamWrapper::stream_open" call failed

该问题与我的本地环境无关,不会影响任何共享环境;但是,阻碍了我的工作进度。非常感谢任何建议。谢谢。

在繁琐地浏览多个日志后,我发现了这条消息...

File temporary://filewFxsrd could not be copied, because the destination directory public://css is not configured correctly.

...知道我的 public 文件路径是 sites/my-site/files,我发现该目录不存在,这让我找到了这个解决方案...

cd sites/my-site; mkdir files; chmod a+rwx files

...这是我的本地环境,files 目录列在我们的 .gitignore 中,所以我不关心它的安全性;虽然,我不清楚该目录是如何删除的。

谢谢大家的建议。

我去了 admin/config/media/file-system 并保存了配置。然后到 admin/config/development/performance 并清除所有缓存。瞧,错误消息消失了。