我制作了一个laravel cms应用程序,我正试图将其部署在共享主机上。在当地,它运行良好。
我已经将所有laravel应用程序文件/文件夹(公共文件除外)保存在"adminCore"文件夹下的根目录中。然后,我将laravel的所有公用文件夹内容复制到public_html/test_page文件夹中。
当我运行它(testpage.mywebpage.com)时,我可以登录,我可以"查看"所有视图,连接并从数据库中读取——我甚至可以存储新数据。然而,如果我试图编辑或删除(来自数据库的)数据,我会得到403错误,即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>