NGINX: 405 Not Allowed
博客专区 > 李星 的博客 > 博客详情
NGINX: 405 Not Allowed
李星 发表于4年前
NGINX: 405 Not Allowed
  • 发表于 4年前
  • 阅读 3876
  • 收藏 4
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

今天碰到一个dz的批量上传文件不成功的问题。
追踪发现,是把静态文件都优化了新地址导致的,用图片服务器存放了swf文件
swf文件上传文件时,就变成向静态文件做post,nginx就会返回405错误
修正域名即可解决。

另外,发现一个好玩的:

NGINX不允许向静态文件提交POST方式的请求,否则报405错误。测试方法为,使用curl向服务器上的静态文件提交POST请求:
curl -d 1=1 http://localhost/version.txt

得到以下结果:

<html>
<head><title>405 Not Allowed</title></head>
<body bgcolor="white">
<center><h1>405 Not Allowed</h1></center>
<hr><center>nginx/1.0.11</center>
</body>
</html>

网上传抄的添加以下配置的解决办法不可用:

error_page 405 =200 @405;
location @405
{
    root /srv/http;
}

一种不完美但可用的方法为:
upstream static_backend {
    server localhost:80;
}

server {
    listen 80;

    # ...

    error_page 405 =200 @405;
    location @405 {
        root /srv/http;
        proxy_method GET;
        proxy_pass http://static_backend;
    }
}

即转换静态文件接收的POST请求到GET方式。

http://0x3f.org/blog/nginx...


原创内容如转载请注明:来自 阿权的书房
共有 人打赏支持
李星
粉丝 10
博文 19
码字总数 9274
×
李星
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: