我正在尝试删除 laravel 应用程序(Laravel 5.4.36),我将公共目录的内容上传到public_html,其他文件夹上传到我的托管用户名的根页脚中。
索引.php路径被修改为加载引导.php自动加载和引导/应用程序.php我确保索引.php有权访问这些文件。
问题是我在尝试访问索引时收到此消息.php
Fatal error: Uncaught Error: Call to a member function make() on string in /home/myuser/public_html/index.php:54 Stack trace: #0 {main} thrown in /home/myuser/public_html/index.php on line 54
这里提到的行是
$kernel = $app->make(IlluminateContractsHttpKernel::class);
我还尝试了几个 php 版本,7.1、7.2 和 7.3。 我在共享服务器上使用 Apache 和 Cpanel,但我也有对该服务器的 root 访问权限,因此我可以重新配置所需的内容。
我按照本教程 https://www.youtube.com/watch?v=6g8G3YQtQt4
我发现了问题
$app是字符串,我不知何故将其更改为字符串,因此
$app = require_once __DIR__.'/../bel/bootstrap/app.php';
它是
$app = __DIR__.'/../bel/bootstrap/app.php';
您可以按照以下步骤解决问题
为您的拉拉维尔项目创建一个新文件夹。
然后上传其中的所有内容,包括公共文件夹,而不更改路径
按照以下步骤将根文件夹更改为/public
https://tecadmin.net/how-to-change-document-root-of-primary-domain-in-cpanel/
要更改主/主域,您需要具有根SSH访问权限,并且能够找到和编辑以下文件(替换您的用户和域信息):
/var/cpanel/userdata/USERNAME/DOMAIN.COM 1.打开文件后,查找以下行:
documentroot:/home/USERNAME/public_html 2.根据您的需要修改位置。保存并退出。
- 重建 Apache 会议并重新启动 Apache:
/scripts/rebuildhttpdconf 服务 httpd 重新启动 更改将是立竿见影的。只需清除浏览器缓存并强制刷新页面!
或者,您还有另一种选择,只需上传public_html旁边的Laravel文件夹以及public_html中Laravel公共文件夹中的所有文件,而无需更改路径