繁体   English   中英

新的Laravel项目投掷500错误:require():打开所需的autoload.php失败

[英]New Laravel Project Throwing 500 Error: require(): Failed opening required autoload.php

我试图学习laravel,我试图在我的服务器上设置它。

我一丝不苟地遵循本教程中的所有说明,同时根据我自己的目录名称更改了一些变量: http//davidmyers.name/post/laravel-on-digital-ocean

当我访问laravel项目的公共文件夹时,仅抛出500错误。 当我尝试访问任何其他页面,如PHPMyAdmin或任何其他PHP或HTML页面时,页面拉起来就好了。

是否有任何我可能遗漏的内容未包含在我引用的教程中? 我仔细检查了我是否正确地遵循了所有步骤。

此外,在目录中运行composer update会引发此错误:

 [RuntimeException]
  Error Output: PHP Warning:  require(/var/www/html/testproj/bootstrap/../vendor/autoload.php): failed to open stream: No
   such file or directory in /var/www/html/testproj/bootstrap/autoload.php on line 17
  PHP Fatal error:  require(): Failed opening required '/var/www/html/testproj/bootstrap/../vendor/autoload.php' (include
  _path='.:/usr/share/php:/usr/share/pear') in /var/www/html/testproj/bootstrap/autoload.php on line 17

我发现这个相关的stackoverflow文章: Laravel 5无法打开所需的bootstrap /../ vendor / autoload.php,但解决方案对我不起作用,因为我的phpinfo()显示OpenSSL已启用。

问题是服务器无法访问这些位置。 运行以下命令

sudo chmod 755 -R "your project name" 

然后

chmod -R o+w "your project name" /storage

如果它仍然无法运行尝试运行:

sudo chmod 775-R "your project name"
sudo chmod 775-R "your project name"/storage

要么

sudo chmod 777-R "your project name"
sudo chmod 777-R "your project name"/storage

你运行composer install吗? 这应该在安装后自动运行php artisan optimize ,我相信这是创建相关文件的命令。

您必须使用以下命令安装composer的依赖项:

composer install

然后为storage目录授予权限:

chmod 777 -R storage

要么

sudo chmod 777 -R storage

事实证明我做的一切都是正确的,但是当我去运行composer install我没有看到由于我的服务器没有足够的内存而导致安装错误。 增加服务器的内存可以解决问题。

有两件事需要考虑,1。Web服务器抛出500错误(好像文本和字体来自Chrome)或2.应用程序显示500错误(具有漂亮的图像和文本)

案例1:您可能需要安装composer

    sudo composer install

案例2:检查存储上的相应权限/(如其他答案所示)并检查您是否有.env文件。 如果不复制.env.example并重命名为.env,您还需要生成应用程序密钥。

    sudo php artisan key:generate

PS:如果您使用git在服务器上部署代码并且开发机器不同,那么您可能会遇到这种情况。 这个答案是基于我面临的情况以及如何解决的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM