PUT & DELETE 请求 - 共享主机上的 Laravel 应用程序

Posted

技术标签:

【中文标题】PUT & DELETE 请求 - 共享主机上的 Laravel 应用程序【英文标题】:PUT & DELETE requests - Laravel app on a shared hosting 【发布时间】:2016-07-29 10:17:34 【问题描述】:

我制作了一个 laravel cms 应用程序,我正在尝试将它部署在共享主机上。在本地,它运行良好。

我已将所有 laravel 应用程序文件/文件夹(公共除外)保存在“adminCore”文件夹下的根目录中。然后,我将所有 laravel 的 public 文件夹内容复制到 public_html/test_page 文件夹中。

当我运行它 (testpage.mywebpage.com) 时,我可以登录,我可以“查看”所有视图,连接并从数据库中读取 - 我什至可以存储新数据。但是,如果我尝试编辑或删除数据(来自数据库),我会收到 403 错误,即 PUT 和 DELETE 请求被拒绝。

由于我对这个问题还很陌生,如果您能解释为什么会发生这种情况和/或应该如何解决这个问题,我将不胜感激。提前谢谢!

【问题讨论】:

***.com/questions/11170377/apache-delete-request 可能适用 【参考方案1】:

Laravel 实际上并没有在表单中使用“PUT”和“DELETE”请求。相反,当您指定 PUTDELETE 操作时,会将隐藏的表单字段添加到表单中:

<input name="_method" type="hidden" value="PUT">

问题可能是您实际上在表单中使用 PUTDELTE 作为操作,而您应该使用上面的隐藏字段。

action 的表单应该是 POST,然后添加隐藏的 _method 字段以及所需操作的值(如上)。示例:

<form method="POST" action="route/url">
    <input name="_method" type="hidden" value="PUT">
    <!-- other form fields here -->
</form>

【讨论】:

以上是关于PUT & DELETE 请求 - 共享主机上的 Laravel 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

学习笔记——@PathVariable注解基本使用;@PathVariable注解属性;REST风格CRUD概述;实现PUT&DELETE提交方法步骤;SpringMVC处理请求数据请求头处理

appengine python`PUT/DELETE`在本地主机上工作但不在服务器上

http中的put,delete等请求为啥不安全

delete post put get请求参数

我的一些 Laravel 路由(PUT 和 DELETE)在共享主机上不起作用

Javascript:获取 DELETE 和 PUT 请求