You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx配置多WordPress站点遇403错误,移除$uri/后后台重定向异常

问题原因与解决办法

核心原因

当try_files $uri $uri/ /index.php?$args中的$uri/生效时,Nginx会尝试访问对应的目录,但如果该目录未配置允许识别目录索引文件,即便wp-admin目录下有index.php,Nginx也不会自动将其作为目录默认入口,直接返回403权限错误。

具体修复方案

1. 明确指定目录默认索引文件

在server块内添加index指令,让Nginx明确知道目录下的默认索引是index.php:

server {
    listen 80;
    server_name mysite.com www.mysite.com;
    root /var/www/my-site;
    # 新增该行,指定目录默认索引
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }
    # 其余配置保持不变...
}

2. 二次确认目录权限细节

虽然你提到wp-admin权限与其他目录一致,仍需确保:

  • 站点根目录/var/www/my-site及所有子目录的所有者为Nginx运行用户(通常是www-data),权限设置为755(所有者读/写/执行,组和其他读/执行)
  • PHP文件权限设为644,避免过高权限引发安全风险

3. 验证wp-admin跳转逻辑

添加index指令后,$uri/会正确指向wp-admin目录下的index.php,既不会触发403,也能保证wp-admin的正常跳转,不会出现重定向过多问题。

排查辅助方案

如果问题仍存在,可临时开启Nginx debug日志定位具体环节:

# 修改nginx.conf中的error_log级别为debug
error_log /var/log/nginx/error.log debug;
# 重启Nginx生效
systemctl restart nginx

访问wp-admin后查看日志,即可明确是哪一步触发了403错误。


内容的提问来源于stack exchange,提问作者theburntcrumpet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 06:30:54