【问题标题】:PUT & DELETE requests - Laravel app on a shared hostingPUT & DELETE 请求 - 共享主机上的 Laravel 应用程序
【发布时间】:2016-07-29 10:17:34
【问题描述】:
我制作了一个 laravel cms 应用程序,我正在尝试将它部署在共享主机上。在本地,它运行良好。
我已将所有 laravel 应用程序文件/文件夹(公共除外)保存在“adminCore”文件夹下的根目录中。然后,我将所有 laravel 的 public 文件夹内容复制到 public_html/test_page 文件夹中。
当我运行它 (testpage.mywebpage.com) 时,我可以登录,我可以“查看”所有视图,连接并从数据库中读取 - 我什至可以存储新数据。但是,如果我尝试编辑或删除数据(来自数据库),我会收到 403 错误,即 PUT 和 DELETE 请求被拒绝。
由于我对这个问题还很陌生,如果您能解释为什么会发生这种情况和/或应该如何解决这个问题,我将不胜感激。提前谢谢!
【问题讨论】:
标签:
php
angularjs
apache
.htaccess
laravel-5
【解决方案1】:
Laravel 实际上并没有在表单中使用“PUT”和“DELETE”请求。相反,当您指定 PUT 或 DELETE 操作时,会将隐藏的表单字段添加到表单中:
<input name="_method" type="hidden" value="PUT">
问题可能是您实际上在表单中使用 PUT 和 DELTE 作为操作,而您应该使用上面的隐藏字段。
action 的表单应该是 POST,然后添加隐藏的 _method 字段以及所需操作的值(如上)。示例:
<form method="POST" action="route/url">
<input name="_method" type="hidden" value="PUT">
<!-- other form fields here -->
</form>