WordPress固定链接设为%postname%后GCP负载均衡返回503错误求助
解决WordPress固定链接设为%postname%后出现503错误的可行思路
确认mod_rewrite模块已启用
执行以下命令启用模块并重启Apache:sudo a2enmod rewrite sudo systemctl restart apache2验证模块是否加载成功:
apache2ctl -M | grep rewrite若输出
rewrite_module (shared)则说明模块正常启用。修正.htaccess文件的权限与归属
确保文件权限和用户组符合Apache运行要求:# 调整权限为644 sudo chmod 644 /var/www/html/.htaccess # 设置归属为Apache运行用户(Debian/Ubuntu用www-data,CentOS用apache) sudo chown www-data:www-data /var/www/html/.htaccess注意:将
/var/www/html/替换为你的WordPress站点根目录路径。排查Apache配置的细节问题
打开站点配置文件(如/etc/apache2/sites-available/000-default.conf),确认<Directory>块覆盖站点根目录且配置正确:<Directory /var/www/html/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>保存配置后,执行
apache2ctl configtest检查语法是否有误,无误后重启Apache。排查插件/主题冲突
- 将
wp-content/plugins目录重命名为plugins-disabled,刷新站点观察503是否消失。若恢复正常,逐个恢复插件排查冲突源。 - 切换到WordPress默认主题(如Twenty Twenty-Four),排查主题自定义规则是否导致重写异常。
- 将
查看服务器错误日志定位原因
实时查看Apache错误日志,获取503错误的具体触发信息:tail -f /var/log/apache2/error.log同时用
top命令检查服务器CPU、内存使用率,排除资源耗尽导致的503。简化.htaccess规则测试
临时替换为最基础的WordPress重写规则,去掉HTTP_AUTHORIZATION相关规则,测试是否能恢复正常:<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
内容的提问来源于stack exchange,提问作者Safiul Azam
相关产品推荐
相关产品推荐

