子目录安装WordPress后主站空白(500错误)求助
子目录安装WordPress后根目录index.php 500错误排查方案
1. 修复根目录.htaccess的配置问题
你的根目录.htaccess存在冗余配置和潜在解析问题,这可能触发500错误。以下是修正后的配置:
<IfModule mod_rewrite.c> RewriteEngine On # 处理根目录非文件/非目录请求 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ ?id=$1 [L,NC,QSA] # 处理blog子目录请求 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^blog/(.*)$ blog/?id=$1 [L,NC,QSA] </IfModule>
- 移除了重复的
RewriteEngine On声明,将所有规则统一放在<IfModule>块内 - 给RewriteRule添加
^和$锚定符,避免规则匹配范围异常
2. 排查PHP代码错误(500错误核心排查点)
空白页+500错误多数源于PHP代码报错但未显示,可通过以下方式定位:
- 在根目录
index.php开头添加代码强制显示错误:
<?php ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); ?>
- 直接查看服务器错误日志:
- Apache日志通常位于
/var/log/apache2/error.log - Nginx日志通常位于
/var/log/nginx/error.log
日志中会明确记录500错误的触发原因
- Apache日志通常位于
3. 验证文件权限与完整性
- 检查根目录
index.php及相关PHP文件权限:设置为644,目录权限设置为755,避免权限过高或过低导致服务器拒绝执行 - 确认根目录PHP文件未被误修改(如安装WP过程中意外覆盖、引入错误依赖)
4. 排除WordPress子目录干扰
虽然你已清空过子目录.htaccess,但仍可确认:
/test-wp的.htaccess配置中RewriteBase /test-wp/是否与实际路径匹配- 服务器是否允许子目录使用.htaccess(需确保Apache的
AllowOverride All配置生效)
内容的提问来源于stack exchange,提问作者Kosmos3D
相关产品推荐
相关产品推荐

