我有一个相当古老的WordPress网站来修复和开发它。修正了一些错误后,我在该子域中全局出现Internal Server Error 500
错误(同样适用于wp-admin
,wp-login
,index.php
等。
注意:我无法访问服务器上的error.log
。
我尝试解决问题的步骤:
首先,我检查了.htaccess
文件,将其删除,手动使用WordPress默认值重新创建,但它没有帮助。
其次,我通过添加php.ini
文件增加了PHP限制,并在wp-config.php
中定义了限制,但没有任何更改。
然后我停用了所有插件(重命名了插件目录),但仍然没有。
我从新安装的WordPress更新了wp-admin
,wp-includes
目录和其他一些核心文件。
我意识到目录和文件权限是错误的。我设置644(对于文件)和755(对于目录)权限。仍然有错误。
我将phpMyAdmin中的home
和site url
选项修改为子域。
之后我决定重新安装整个WordPress来解决问题,当我在网上找到一些wp-content
文件时,我开始将.php
下载到我的电脑(25 GB)上传并在图库中。他们大多是某种后门。幸运的是,Apache没有在我的机器上运行。
毕竟,我在FTP服务器上创建了一个额外的备份目录,并将旧的WordPress站点移动到该目录中。我将最新的WordPress上传到服务器上的原始站点位置,并设置wp-config.php
文件。但我得到了Internal Server Error 500
错误。
更新:我尝试使用以下代码设置WP_DEBUG
:
// Enable WP_DEBUG mode
define('WP_DEBUG', true);
// Enable Debug logging to the /wp-content/debug.log file
define('WP_DEBUG_LOG', true);
// Disable display of errors and warnings
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors',0);
它不会将debug.log
保存到wp-content
目录中。
也在.htaccess
:
php_flag display_startup_errors on
php_flag display_errors on
php_flag html_errors on
php_flag log_errors on
php_value error_log / <root>/public_html/PHP_errors.log
总之,我猜问题是在MySQL数据库中,但我希望我错了。它非常大,不知道那可能是什么问题。也许是wp_options
表中的某些内容。我不知道。
我使用WinSCP进行FTP,使用Notepad ++和Eclipse进行编辑。
答案 0 :(得分:0)
我在服务器中发现了同样的错误,问题出在PHP版本上。请确保您已在服务器中安装了5.4版本。其他版本未针对WP进行测试并导致问题。下一个WP更新可能支持7.X版本。
简而言之,在cPanel中找到PHP版本设置并将其更改为5.4
答案 1 :(得分:0)
你可以尝试下面的解决方案,它对我有用。
使用FTP(而不是Cpanel)从Root中选择所有文件并点击右键,您将看到&#34;文件权限&#34;,单击它并将权限代码更改为&#34; 0644&#34; ,点击&#34; ok&#34;。我们已经完成了。 希望这有帮助。