Rob*_*inJ 4 php codeigniter php-5.4
我正在尝试扩展一个使用 CodeIgniter 1.7 的旧 Web 应用程序(我知道......),但遇到了一些麻烦。我希望某个路由只能通过POST请求访问。所以在函数的顶部我有以下内容;
if ($_SERVER['REQUEST_METHOD'] != 'POST')
die ('Wrong request method: ' . $_SERVER['REQUEST_METHOD']);
Run Code Online (Sandbox Code Playgroud)
在本地,在带有 PHP 内置 Web 服务器的 PHP 7.0.14 上,这可以正常工作。然而,在生产环境中,在运行 PHP 5.4.25 的 CPanel 托管服务器上,情况并非如此。
当使用 Postman 向我的路线发送POST请求时,我得到以下信息;
错误的请求方式:GET
PUT、PATCH、DELETE等请求均能正确识别。然而, POST请求似乎神奇地变成了GET请求。
我随请求发送的POST$_POST数据似乎也消失了,并且在或中都找不到$_GET。
它似乎与 CodeIgniter 框架无关,但是当我调用框架之外的文件时,我得到相同的结果。
有什么想法吗?
我正在向http://domain发出请求,其中设置为重定向到http://www.domain,结果将 POST 请求转换为 GET 请求。Postman 不会通知用户发生此类重定向。
如果您遇到此问题,请务必检查是否发生任何重定向。
我想知道为什么这只发生在 POST 请求中,而不是发生在 PUT、PATCH、DELETE...请求中。
感谢 LSerni、Alex Blex 和 Vaviloff 为我指明了正确的方向。
| 归档时间: |
|
| 查看次数: |
2590 次 |
| 最近记录: |