Symfony HTTP PUT 2.6奇怪的行为(404)

时间:2015-07-28 12:31:56

标签: php rest symfony http put

我有一个Symfony 2.6设置,我想添加一个HTTP PUT请求。 我的所有POST和GET请求都在工作,但是PUT我得到的是404。

HTTP GET请求:http://example.com/dfsfdfsfd 响应:找不到“GET / dfsfdfsfd”的路由:方法不允许(允许:PUT)(405方法不允许)

尼斯!这就是我所期望的,只允许PUT。

HTTP PUT请求: 响应:服务器返回“404 Not Found”。 这似乎很奇怪,HTTP GET请求告诉我不允许该方法,然后我用PUT方法执行相同的请求并收到404错误。

我已经在http://symfony.com/doc/current/cookbook/routing/method_parameters.html上阅读了有关浏览器兼容性的内容,但这似乎仅适用于HTML表单限制。

我还检查了配置文件,发现了一个允许PUT请求方法的nelmio_cors配置密钥。 代码:

nelmio_cors:
    paths:
        '^/':
            allow_origin: ['*']
            allow_headers: ['*']
            allow_methods: ['POST', 'PUT', 'GET', 'DELETE','OPTIONS']
            max_age: 3600

在这种情况下我做错了什么?这是我缺少的环境吗?

1 个答案:

答案 0 :(得分:0)

发现它,与Symfony无关! 服务器配置问题(不接受HTTP PUT)。

在我的Apache配置中找到。 将PUT添加到该列表中并解决了问题。