默认情况下,nginx、apache、IIs等web服务无法响应静态页面的post请求,后端用来处理post请求,生产环境中不会有此问题(一般都不允许配置静态页面的post请求)
为什么默认不支持静态页面post请求呢?
首先了解一下post请求方法,post请求一般用于提交表单或上传文件,post请求会导致新资源的建立或旧资源的更改。就安全方面来说(排除url地址的透明性),它对比get请求会有更改资源的情况,有些静态资源是不允许更改的,所以默认情况下web服务器上的静态资源都不允许发起post请求。
有时候开发会写个json页面,它需要给领导展示,但是默认不允许发起post请求,就需要配置,这里以nginx为例,

    upstream static_backend {
        server localhost:80;
       }
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
       error_page 405 =200 @405;
       location @405 {
        root /html;
        proxy_method GET;
        proxy_pass http://static_backend;
       }