我的环境是 LNMP 部署的 wordpress,在 wordpress 后台新建页面再输入标题的时候,报错如下

wdprs_405

通过使用 google 检查工具查看到一个链接地址为 405 状态码,且为 post 请求链接,然后开始查询 405 所代表的问题。最终定位结论为 Nginx 默认是不允许 post 访问静态资源。

405 表示 Not Allowed

网络上的解决方法五花八门,我这里采用了,最简单最直接的方法,错误重定向,将访问到的 405 界面定位到正确的 URI 路径,并将状态码修改为 200

找到 nginx 配置文件,在该站点的 server 下添加,重启 nginx 即可。

server {
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

        error_page  404     /404.html;
        error_page  403     /403.html;

        # To allow POST on static pages
        error_page  405     =200 $uri;

        # ...
}

我这里遇到的 405 是可以通过 这种方式解决的,希望可以帮助到来访者。

如果是公司的开发调试时做了对 nginx 静态资源做 post 请求的动作,最终还要:说服开发不要对静态文件使用 post 方法,对静态文件使用 POST 方法是无意义的,更改成 GET 方法请求静态文件。

参考链接:https://blog.51cto.com/chinahao/2057940

评论




正在载入...
PoweredHexo
HostedAliyun
DNSAliyun
ThemeVolantis
UV
PV
BY-NC-SA 4.0