php - wordpress中的文件写入问题

标签 php linux wordpress

我试图在我安装的主题中导入演示内容,但每次我尝试通过上传 XML/JSON 文件导入数据时,它都会抛出错误。

我在尝试从 Tools->Widget Importer and Exports->uploading a .wie file 导入 widget 文件时遇到此错误。

enter image description here

我在通过插件“一键式演示导入”上传演示内容时遇到此错误。

enter image description here

它有两个选项

  1. 是点击上传按钮然后它会自动上传 文件。

  2. 是手动上传文件(XML,JSON文件)。

当我执行第二个选项时,它有时会给出一条成功消息,但没有任何更改反射(reflect)在主题或任何地方(如果数据导入成功,它会创建显示在“页面”菜单中的演示页面[在本地主机上工作])。

我在服务器 (AWS Linux 2) 上遇到了这个问题,在本地主机上一切正常。我也在 php.ini 文件中做了一些更改,但没有用(用这个值更改了默认值)。

upload_max_filesize (256M)
max_input_time (300)
memory_limit (256M)
max_execution_time (300)
post_max_size (512M)

请建议我还能尝试什么。

最佳答案

这个问题可能有很多原因。

首先,你的服务器有足够的空间吗?

其次,可能是由于 wp-content 中的错误权限。为了修复它,递归地更改 wp-content 的文件夹和子文件夹的组权限以启用写权限并将文件权限更改为 664。

如果您使用的是 FileZilla,只需通过 FTP 连接到该服务器,右键单击该文件夹,转到权限并将其设置为 775 并递归仅应用于子目录。对于文件,通过仅递归更改文件的权限来确保它们具有 664。

如果你想使用终端,在 wp-content 中:

find . -type d -exec chmod -R 775 {} \;

find . -type f -exec chmod -R 664 {} \;

第三,如果您仍然看到错误,那么您需要清空临时文件目录。

WordPress 使用 PHP 上传您的图片,PHP 首先将上传内容保存到您的网络服务器上的一个临时目录中。之后它将它们移动到您的 WordPress 上传文件夹。

如果此临时目录已满或配置不当,则 WordPress 将无法将文件写入磁盘。

如果您不知道在哪里可以找到该文件夹​​,请检查:https://developer.wordpress.org/reference/functions/get_temp_dir/ .此方法将允许您到达该位置。您还可以在 php.ini 中检查“upload_tmp_dir”。

如果没有定义位置(这种可能性很小),您需要将此代码粘贴到 wp-config.php 文件中,就在“就这样,停止编辑!”这一行之前。祝您写博客愉快”。

define('WP_TEMP_DIR', dirname(__FILE__) . '/wp-content/temp/');

接下来,您需要转到 wp-content/文件夹并在其中创建一个新文件夹。您需要将这个新文件夹命名为 temp。

第四,检查堆栈中的另一个答案:https://stackoverflow.com/a/16091596/5675325

关于php - wordpress中的文件写入问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52867424/

相关文章:

css - 页面标题的字体在 Windows 和 Linux 浏览器中显示不同

php - 将 SQL 返回的数据分解为更多字段

php - 如何获取字段类型和值?

c - 使用 ipcrm 删除共享内存 linux

linux - 在64位系统上组装32位二进制文​​件(GNU工具链)

css - 我正在尝试解决特定网站的响应问题,但似乎无法获取页脚小部件

javascript - 通过 Ajax 加载内容时,WORDPRESS 音频播放器未加载,MediaElement.js 未应用

php - 将多个 PHP 变量分配给 MySQL 值

php - 检查重复记录

linux - 有没有办法在 CentOS 中计算每秒文件中添加的行数?