为什么我可以上传文件,但插件需要通过FTP登录

时间:2016-04-03 作者:dangel

我知道这可能是一个文件权限问题,但我不明白为什么会发生这种情况。(我更想了解发生了什么,而不是寻找快速解决方案。)

为什么我可以上传媒体,但不能更新或安装插件?我的wp-content 文件夹,甚至plugins 文件夹看起来具有正确的权限。Apache服务器运行于www-data 该组拥有文件夹和文件的所有权。

drwxrwsr-x  6 www-data www-data  4096 Apr  2 21:40 wp-content
drwxrwsr-x 3 www-data www-data 4096 Apr  2 21:15 plugins
注:我确实读过Why would WordPress request FTP information when it can write to the file server? 但我仍然不能完全理解到底发生了什么。

注2:这是在未共享的VPS上。

1 个回复
SO网友:majick

有时,仅在安装的一个目录或子目录中,所有者/组不匹配就足以使WP_Filesystem 查看权限不匹配,并询问您的FTP详细信息。

我在复制/安装插件时遇到过这种情况root 用户通过SSH,忘记了设置所有者/组,然后插件在没有修复的情况下不会直接更新。

您可以尝试跟踪这些权限并单独更改它们,但一个全面而快速的解决方案是,只需递归地更新整个安装的所有者/组权限(从下面的级别public_html 或您的安装根目录。)这还可以修复您可能忘记修复的任何其他权限:

chown -R www-data:www-data public_html
在哪里www-data 是您的“web”用户(不是每个人都一样,例如admin、apache)

请注意,这是一种略为快捷的方法,与分别设置所有者和组相同:

chown -R www-data public_html
chgrp -R www-data public_html

相关推荐

Recommended File Permissions

嘿,伙计们,我花了很长时间试图解决这个问题。我想知道WordPress中的文件权限应该是什么样子in order to use the autoupdate feature. 到目前为止,我的wordpress安装程序一直在询问我的FTP信息,我不想使用那种升级/安装方法,我想使用纯/直接PHP。某些上下文:Web服务器和php fcgi守护程序运行为www-data:www-data</wordpress安装位于/home/blaenk/sites/domain.tld/</首先,我read