移除WordPress固定链接index.php后出现Apache 404错误求助
解决方案:移除WordPress固定链接index.php后404问题排查
1. 确认Apache配置生效
- 检查修改的
default.conf是当前站点使用的虚拟主机配置文件(部分系统默认是000-default.conf,若有自定义站点配置需对应修改) - 重启Apache服务使配置生效:
sudo systemctl restart apache2
2. 修正.htaccess权限与归属
Apache需要能读取.htaccess文件,执行以下命令:
# 设置文件所有者为Apache运行用户(Ubuntu/Debian为www-data) sudo chown www-data:www-data /var/www/html/.htaccess # 设置正确权限 sudo chmod 644 /var/www/html/.htaccess
3. 刷新WordPress固定链接设置
- 登录WordPress后台,进入「设置」→「固定链接」
- 选择「文章名」或其他非「朴素」的格式,点击保存更改(此操作会自动验证并更新.htaccess,同时修正数据库中的站点URL配置)
- 可通过SQL语句确认数据库配置(替换
wp_为你的表前缀):
SELECT option_value FROM wp_options WHERE option_name IN ('siteurl', 'home');
确保返回值为http://你的域名,不含index.php
4. 确认mod_rewrite模块确实启用
重新执行启用命令并重启Apache,避免模块未正确加载:
sudo a2enmod rewrite sudo systemctl restart apache2
验证模块状态:
apache2ctl -M | grep rewrite
输出rewrite_module (shared)即为正常启用
5. 排查其他潜在问题
- 若WordPress安装在子目录,需将
.htaccess中的RewriteBase /改为子目录路径(如RewriteBase /blog/) - 检查Apache错误日志获取具体报错信息:
sudo tail -f /var/log/apache2/error.log
根据日志提示针对性修复(如文件路径错误、FollowSymLinks未启用等)
内容的提问来源于stack exchange,提问作者Alok
相关产品推荐
相关产品推荐

