【问题标题】:Running PHP on IIS - file permissions are correct but uploads don't work在 IIS 上运行 PHP - 文件权限正确但上传不起作用
【发布时间】:2012-05-26 06:23:04
【问题描述】:

我正在将一个 wordpress 安装从 XAMPP 移动到一个运行 PHP 的 IIS 服务器并运行到这个服务器上。

按照托管公司的指示,我的两个 Plesk 用户的文件权限都设置为这个(我要求的权限等同于 chmod 755):

这不适用于任何文件/插件上传。我每次都会遇到这个错误:

警告:touch() [function.touch]:无法创建文件 C:\Inetpub\vhosts\zzzzz.com\httpdocs\oly/wp-content/slide1.tmp 因为权限被拒绝 C:\Inetpub\vhosts\zzzzz.com\httpdocs\oly\wp-admin\includes\file.php 在第 177 行

我检查过,关于file_uploads(打开)、upload_max_filesizepost_max_size(每个 20M),我的 php.ini 似乎没问题。 safe_mode 也已关闭。

我该如何解决这个问题?

【问题讨论】:

  • 您在错误消息中有...\httpdocs\oly/wp-content/slide1.tmp,但屏幕截图显示了.../httpdocs/.../wp-content/uploads 的设置——一个子文件夹。 您正在使用的文件夹的权限是什么?
  • !该死的......我从来不需要处理该文件夹的权限,但事实证明它没有任何权限,原因不明。问题解决了!请将您的评论移至答案,以便我接受!谢谢!

标签: php iis permissions


【解决方案1】:

PHP 似乎抱怨在 C:\Inetpub\vhosts\zzzzz.com\httpdocs\...\wp-content/ 目录中写入,因为屏幕截图显示了 ...\httpdocs\...\wp-content/uploads 的设置,这是一个子文件夹。

检查正在写入文件的文件夹的权限。看截图,我可以猜到父目录没有设置IIS匿名用户/工作进程的权限。

【讨论】:

    猜你喜欢
    • 2014-10-23
    • 2011-04-08
    • 1970-01-01
    • 2012-07-02
    • 2013-02-14
    • 2013-02-05
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多