1

在最近升级到最新的 WordPress 版本后,媒体上传不再起作用。他们返回缺少临时文件夹错误。

我发现 WP 认为 /wwwroot/wp-admin/ 是临时文件夹,这就是它试图发送上传的地方。

我尽一切努力迫使它在 WordPress 中改变。设置 WP_TEMP_DIR,甚至尝试重写在 /wp-includes/text/Diff.php 中查找临时文件夹并设置静态路径的核心函数。

没有任何效果。我对 Azure 了解不多,所以这让我很头疼。

我最后的手段是为 WP 安装和使用 Azure 存储插件,但这是最后的手段。

任何人都可以对这个问题有所了解吗?将不胜感激。

更新:站点是一个 Azure 网站,它不使用 Azure 实例。 http://www.windowsazure.com/en-us/home/features/web-sites/

4

2 回答 2

0

我不确定 Azure,但您可以使用以下命令更改 WordPress 使用的 tmp 目录。在这样做之前,请确保在您的主目录中创建一个文件夹。

wp-配置

define('WP_TEMP_DIR','/link-to-your-folder-you-just-made'); 
于 2012-10-12T18:35:05.823 回答
-1

首先,您永远不应该在 Azure 实例上存储任何内容,将其视为 volalite 存储,就像 RAM 一样 - 如果实例出现故障甚至随机重新启动,您实际上可能会获得具有新文件系统的全新虚拟机并丢失所有内容。

话虽如此,您可以安全地 RDP 进入实例 - 创建一个目录(例如 c:\temp),只要 IIS 帐户对该目录具有权限,您将其用作暂存存储不会有任何问题。我会使用上面 Andy 的方法(我不知道 wordpress,但我知道 Azure),只需确保它指向一个可以用作临时目录并且 IIS 用户可以安全使用的目录。

您可能希望使用 RDP 登录到 VM,如果只是因为它可以让您深入了解 Azure 如何为其运行的软件构建文件系统,您将看到 3 个驱动器,如果内存为其中一个提供服务纯粹是您可以使用的暂存驱动器。但它不是持久的,考虑到它可以随时清除。

希望这可以帮助,

于 2012-10-12T20:32:13.397 回答