我在 Slim v2 应用程序中声明了多个GET,POST和PUT路由,并且API一直运行到今天。在2个POST路由中,声明的第一个路由返回 404 Not Found 错误。这只发生在我在GoDaddy托管上调用API时;当我在我的localhost上测试它时工作正常。这是如此奇怪,我已经没有关于如何调试此问题的想法。我正在使用Postman来执行和测试对两个服务器,本地和GoDaddy的调用。此外,对GoDaddy托管API的调用是通过HTTPS完成的。我在两台服务器上的 .htaccess 文件如下所示:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L,QSA]
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
答案 0 :(得分:0)
向POST
服务器发出/apifolder/v1/addcheckin
请求时,301响应重定向导致客户端向GET
发出/apifolder/v1/addcheckin
请求。由于没有这样的GET路由定义服务器响应404错误。
$ curl -i -X POST https://myurl.com/apifolder/v1/addcheckin
HTTP/1.1 301 Moved Permanently
Date: Sun, 26 Feb 2017 02:26:34 GMT
Location: https://myurl.com/apifolder/v1/addcheckin
检查中间件和其余代码,看看导致301重定向的原因。