PUT和DELETE请求 - 在共享主机上运行的Laravel应用程序

3
我已经制作了一个基于Laravel的CMS应用程序,现在我想要将其部署到共享主机上。在本地运行良好。
我将除public文件夹之外的所有Laravel应用程序文件/文件夹保存在'adminCore'文件夹下的根目录中。然后,我将所有Laravel的public文件夹内容复制到public_html/test_page文件夹中。
当我运行它(testpage.mywebpage.com)时,我可以登录,可以“看到”所有视图,连接并从数据库读取 - 我甚至可以存储新数据。但是,如果我尝试编辑或删除数据(来自数据库),我会收到403错误,即PUT和DELETE请求被拒绝。
由于我对这个问题还比较陌生,所以我非常感谢您能解释为什么会出现这种情况和/或应该如何解决。谢谢!

可能适用于Apache的DELETE请求。 - apokryfos
1个回答

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>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接