WP4.1 - 插件-install.php 给出 "You do not have sufficient permissions to access this page."
WP4.1 - plugin-install.php gives "You do not have sufficient permissions to access this page."
请参阅 post
末尾的修复
问题是无法再通过管理仪表板 updated/installed 插件。仪表板本身可以访问并且大部分功能正常 - 除了插件 update/install(也没有 wordpress 更新条目)。
我对这个网站的历史知之甚少,因为这个问题是事后才给我的。
我很确定文件系统权限(linux 主机)没问题。试图删除所有插件(重命名目录)和 .htaccess,但无济于事。但是,安装了 better-wp-security 插件,我开始怀疑它在数据库中所做的一些更改(wp_config.php 中几乎没有,除了前缀更改)可能是罪魁祸首。
调用插件-install.php 时,网络服务器 (apache) 日志显示 500 错误:
192.168.0.1 - - [21/Jan/2015:12:56:52 +0100] "GET /wp-admin/themes.php?page=install-plugins HTTP/1.1" 500 1351 "http://xxx.yyy.zzz/wp-admin/" "Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
error_log清楚了。显示的 500 对应没有错误。实际上,即使 log_errors=On,error_log 中也很少出现错误。 php.ini 有:
error_reporting = E_ALL & ~E_DEPRECATED
display_errors = Off
display_startup_errors = Off
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
track_errors = Off
html_errors = Off
mssql.min_error_severity = 10
即使将 wp 的调试标志设置为 true,我也无法获得更多信息。
我已手动重新插入 ID 1 用户(wp-better-admin 已将其删除),没有任何更改。 DISALLOW_FILE_EDIT 未定义。
现在怎么办?
编辑: TL,DR:安装了一个新的 wordpress,它可以工作。不要从 OS 包管理器安装 wordpress。使用 wordpress.com 压缩包。
我工作的机器是Centos6服务器。 Wordpress 是从 EPEL 存储库安装的——这似乎是明智的做法,因为依赖关系,等等。不是。为了避免从仪表板更新包,打包者以一种足够愚蠢的方式修改了源:
- 也禁止插件installs/update
- 在不给出任何关于正在发生的事情的提示的情况下这样做
- 在标准更新中更改行为
因此混乱。工具 wp-cli,(https://trepmal.com/2014/02/22/getting-started-with-wp-cli/) 及其核心 verify-checksums 命令对解决方案很有帮助 - 强烈推荐。
好的,500 错误是很糟糕的。 Apache 让您知道 PHP 做了一些糟糕到无法恢复的事情。
首先想到的是您的安全插件更改了 wp-content/uploads
或 wp-content/plugins
等目录的权限。可以上传主题吗?
这里有一些通用的建议。
0: 备份你的数据库和你的 wp-content/uploads 目录。备份任何自定义主题和插件。把它们放在安全的地方。
1:您上面的 php.ini 设置没有显示记录错误的位置。有时是 Apache 错误日志,有时是 /var/log/messages
请确保您找对了地方。
2:在现有网站的基础上重新安装 WordPress。手动覆盖核心不应该伤害任何东西。可能是您那里有损坏的 PHP 文件(我遇到过这种情况)或对核心进行了一些修改导致了问题。 (不太可能)
3:如果它仍在抛出 500,而您看不到位置,那么请尝试将此作为最后的努力
转到 http://getpantheon.com/register 并设置一个免费帐户。 (不需要信用卡。是的,我为他们工作,不,这不是他们的广告。)
将 WordPress 站点设置为沙箱
一个一个地安装你的主题和插件。在每次安装之间进行测试。
d: 如果还没有出现故障,请导入您的数据库。这很棘手,但听起来你是一名开发人员,所以你可以弄清楚。我在 OSX 上使用 Sequel Pro 来完成我所有的数据库工作。您还需要下载并使用 Pantheon 的 cli 工具 (https://github.com/pantheon-systems/cli),以便您可以使用正确的 URLS 更新您的数据库)
现在 #3 有很多工作要做。在我的个人博客上,我大约需要 15 分钟才能完成,但我已经完成了很多次,我可以在睡梦中完成。预计需要 60-90 分钟才能完成,具体取决于您网站的大小。
如果您的站点在沙盒中正常工作,那就是一个难题。到那时,虽然后背很痛,但我会:
- 对所有内容进行备份删除服务器上的所有内容(好吧,
与本网站有关的所有内容)
- 一次重新安装一个,直到它正常工作或再次出错。
HTH,
=C=
请参阅 post
末尾的修复问题是无法再通过管理仪表板 updated/installed 插件。仪表板本身可以访问并且大部分功能正常 - 除了插件 update/install(也没有 wordpress 更新条目)。 我对这个网站的历史知之甚少,因为这个问题是事后才给我的。
我很确定文件系统权限(linux 主机)没问题。试图删除所有插件(重命名目录)和 .htaccess,但无济于事。但是,安装了 better-wp-security 插件,我开始怀疑它在数据库中所做的一些更改(wp_config.php 中几乎没有,除了前缀更改)可能是罪魁祸首。 调用插件-install.php 时,网络服务器 (apache) 日志显示 500 错误:
192.168.0.1 - - [21/Jan/2015:12:56:52 +0100] "GET /wp-admin/themes.php?page=install-plugins HTTP/1.1" 500 1351 "http://xxx.yyy.zzz/wp-admin/" "Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
error_log清楚了。显示的 500 对应没有错误。实际上,即使 log_errors=On,error_log 中也很少出现错误。 php.ini 有:
error_reporting = E_ALL & ~E_DEPRECATED
display_errors = Off
display_startup_errors = Off
log_errors = On
log_errors_max_len = 1024
ignore_repeated_errors = Off
track_errors = Off
html_errors = Off
mssql.min_error_severity = 10
即使将 wp 的调试标志设置为 true,我也无法获得更多信息。
我已手动重新插入 ID 1 用户(wp-better-admin 已将其删除),没有任何更改。 DISALLOW_FILE_EDIT 未定义。
现在怎么办?
编辑: TL,DR:安装了一个新的 wordpress,它可以工作。不要从 OS 包管理器安装 wordpress。使用 wordpress.com 压缩包。
我工作的机器是Centos6服务器。 Wordpress 是从 EPEL 存储库安装的——这似乎是明智的做法,因为依赖关系,等等。不是。为了避免从仪表板更新包,打包者以一种足够愚蠢的方式修改了源:
- 也禁止插件installs/update
- 在不给出任何关于正在发生的事情的提示的情况下这样做
- 在标准更新中更改行为
因此混乱。工具 wp-cli,(https://trepmal.com/2014/02/22/getting-started-with-wp-cli/) 及其核心 verify-checksums 命令对解决方案很有帮助 - 强烈推荐。
好的,500 错误是很糟糕的。 Apache 让您知道 PHP 做了一些糟糕到无法恢复的事情。
首先想到的是您的安全插件更改了 wp-content/uploads
或 wp-content/plugins
等目录的权限。可以上传主题吗?
这里有一些通用的建议。
0: 备份你的数据库和你的 wp-content/uploads 目录。备份任何自定义主题和插件。把它们放在安全的地方。
1:您上面的 php.ini 设置没有显示记录错误的位置。有时是 Apache 错误日志,有时是 /var/log/messages
请确保您找对了地方。
2:在现有网站的基础上重新安装 WordPress。手动覆盖核心不应该伤害任何东西。可能是您那里有损坏的 PHP 文件(我遇到过这种情况)或对核心进行了一些修改导致了问题。 (不太可能)
3:如果它仍在抛出 500,而您看不到位置,那么请尝试将此作为最后的努力
转到 http://getpantheon.com/register 并设置一个免费帐户。 (不需要信用卡。是的,我为他们工作,不,这不是他们的广告。)
将 WordPress 站点设置为沙箱
一个一个地安装你的主题和插件。在每次安装之间进行测试。
d: 如果还没有出现故障,请导入您的数据库。这很棘手,但听起来你是一名开发人员,所以你可以弄清楚。我在 OSX 上使用 Sequel Pro 来完成我所有的数据库工作。您还需要下载并使用 Pantheon 的 cli 工具 (https://github.com/pantheon-systems/cli),以便您可以使用正确的 URLS 更新您的数据库)
现在 #3 有很多工作要做。在我的个人博客上,我大约需要 15 分钟才能完成,但我已经完成了很多次,我可以在睡梦中完成。预计需要 60-90 分钟才能完成,具体取决于您网站的大小。
如果您的站点在沙盒中正常工作,那就是一个难题。到那时,虽然后背很痛,但我会:
- 对所有内容进行备份删除服务器上的所有内容(好吧, 与本网站有关的所有内容)
- 一次重新安装一个,直到它正常工作或再次出错。
HTH,
=C=