首页 文章

Laravel:php artisan服务无法启动

提问于
浏览
0

我在这里挖掘了其他一些答案,似乎没有什么比这更合适了 . 我可能最初会留下一些信息,所以请告诉我你还需要什么,谢谢!

目前运行ubuntu 7,使用composer和laravel两者似乎都正确安装:

当我在终端输入'php artisan serve'和'php artisan serve --port:8000'时,我收到此错误:

PHP警告:require(/ home / user / Projects / thingy / bootstrap /../ vendor / autoload.php):无法打开流:/ home / user / Projects / thingy / bootstrap / autoload中没有这样的文件或目录第17行的.php PHP致命错误:require():无法打开所需的'/home/user/Projects/thingy/bootstrap/../vendor/autoload.php'(include_path =' . :/ usr / share / php' )在第17行的/home/user/Projects/thingy/bootstrap/autoload.php中

当我尝试运行'php -S localhost:8000 -t public /'时,尝试刷新时出现以下错误:

PHP 7.0.18-0ubuntu0.17.04.1开发服务器于2017年7月6日星期四09:15:36开始在http:// localhost:8000上搜索文档根目录为/ home / user / Projects / thingy / public按Ctrl-C退出 . [Thu Jul 6 09:15:40 2017] PHP警告:require(/ home / user / Projects / thingy / bootstrap /../ vendor / autoload.php):无法打开流:/ home中没有这样的文件或目录第17行上的/user/Projects/thingy/bootstrap/autoload.php [2017年7月6日星期四09:15:40] PHP致命错误:require():无法打开所需的'/ home / user / Projects / thingy / bootstrap / . 第17行/home/user/Projects/thingy/bootstrap/autoload.php中的./vendor/autoload.php'(include_path =' . :/ usr / share / php')[Thu Jul 6 09:15:40 2017 ] 127.0.0.1:57214 [500]:/ - require():打开所需的'/home/user/Projects/thingy/bootstrap/../vendor/autoload.php'(include_path =' . :/ usr / share / php')在第17行的/home/user/Projects/thingy/bootstrap/autoload.php中

我查看是否可能已经使用'ps -ef |运行服务器终端中的grep php'命令,我根本看不到任何运行的服务器 .

我运行'composer install',我收到以下错误:

无法创建缓存目录/home/user/.composer/cache/repo/https---packagist.org/,或者目录不可写 . 无缓存进行无法创建缓存目录/home/user/.composer/cache/files/,或目录不可写 . 无缓存进行无法创建缓存目录/home/user/.composer/cache/repo/https---packagist.org/,或者目录不可写 . 在没有缓存的情况下继续使用包信息加载编写器存储库从锁定文件安装依赖项(包括require-dev)无法将您的需求解析为可安装的软件包集 . 问题1 - laravel / framework v5.4.28的安装请求 - > laravel / framework [v5.4.28]可满足 . - laravel / framework v5.4.28需要ext-mbstring * - >系统中缺少所请求的PHP扩展名mbstring . 问题2 - phpunit / php-code-coverage 4.0.8的安装请求 - > phpunit / php-code-coverage [4.0.8]可满足 . - phpunit / php-code-coverage 4.0.8需要ext-dom * - >系统中缺少所请求的PHP扩展dom . 问题3 - phpunit / phpunit 5.7.21的安装请求 - > phpunit / phpunit [5.7.21]可满足 . - phpunit / phpunit 5.7.21需要ext-dom * - >系统中缺少所请求的PHP扩展dom . 问题4 - laravel / framework v5.4.28需要ext-mbstring * - >系统中缺少所请求的PHP扩展mbstring . - laravel / tinker v1.0.1需要照亮/控制台~5.1 - > laravel / framework [v5.4.28]可满足 . - laravel / tinker v1.0.1的安装要求 - > laravel / tinker [v1.0.1]可满足 . 要启用扩展,请验证它们是否已在.ini文件中启用: - /etc/php/7.0/cli/php.ini - /etc/php/7.0/cli/conf.d/10-opcache.ini - / etc /php/7.0/cli/conf.d/10-pdo.ini - /etc/php/7.0/cli/conf.d/20-calendar.ini - /etc/php/7.0/cli/conf.d/20 -ctype.ini - /etc/php/7.0/cli/conf.d/20-exif.ini - /etc/php/7.0/cli/conf.d/20-fileinfo.ini - /etc/php/7.0/ cli / conf.d / 20-ftp.ini - /etc/php/7.0/cli/conf.d/20-gettext.ini - /etc/php/7.0/cli/conf.d/20-iconv.ini - /etc/php/7.0/cli/conf.d/20-json.ini - /etc/php/7.0/cli/conf.d/20-pdo_pgsql.ini - /etc/php/7.0/cli/conf.d /20-pgsql.ini - /etc/php/7.0/cli/conf.d/20-phar.ini - /etc/php/7.0/cli/conf.d/20-posix.ini - / etc / php / 7.0 / cli / conf.d / 20-readline.ini - /etc/php/7.0/cli/conf.d/20-shmop.ini - /etc/php/7.0/cli/conf.d/20-sockets . ini - /etc/php/7.0/cli/conf.d/20-sysvmsg.ini - /etc/php/7.0/cli/conf.d/20-sysvsem.ini - /etc/php/7.0/cli/conf .d / 20-sysvshm.ini - /etc/php/7.0/cli/conf.d/20-tokenizer.ini - /etc/php/7.0/cli/conf.d/20-zip.ini你也可以运行php --i ni在终端内部查看PHP在CLI模式下使用的文件 .

运行'composer dump-autoload'时,我得到以下内容:

无法创建缓存目录/home/user/.composer/cache/repo/https---packagist.org/,或者目录不可写 . 无缓存进行无法创建缓存目录/home/user/.composer/cache/files/,或目录不可写 . 无缓存进行无法创建缓存目录/home/user/.composer/cache/repo/https---packagist.org/,或者目录不可写 . 无缓存进行生成优化的自动加载文件

按照Nishan Karunarathna和Alex的建议,我现在运行'php artisan serve'时出现以下错误:

PHP致命错误:未捕获错误:在/home/joshua/Projects/thingy/bootstrap/app.php:14中找不到类'Illuminate \ Foundation \ Application'堆栈跟踪:0 / home / joshua / Projects / thingy / artisan( 18):在第14行的/home/joshua/Projects/thingy/bootstrap/app.php中抛出require_once()1

感谢您的帮助!

3 回答

  • 0

    您在进行作曲家安装时遇到错误 .

    安装所需的PHP扩展

    sudo apt-get install php7.0-mbstring
    
    sudo apt-get install php7.0-xml
    

    然后重新启动你的nginx并尝试再次运行composer install .

  • 0

    我想你应该:

    1)安装额外的PHP扩展 . 遇到类似这样的终端: $ sudo apt-get install php7.0-opcache php7.0-calendar php7.0-ctype php7.0-gettext ...

    2)然后授予缓存dir of composer的权限: $ sudo chmod -R u+w /home/joshua/.composer 或如果此目录不存在,则应在 $ sudo mkdir /home/joshua/.composer 之前创建它

    3)运行 $ composer install

    但我想请你注意:

    1)在写入权限上检查您的主目录 . 如果您没有它们,则大多数程序无法正常工作

    2)可能你需要PHP扩展但它们没有加载 . 在这种情况下,请检查.ini文件并启用扩展 .

  • 0

    好的,我设法回答了我自己的问题(实际上是朋友为我解答了 . )

    显然,在你安装了laravel和composer之后,它有时会丢失文件路径:

    我必须在/ home / user / level上的隐藏文件中打开我的.bashrc文件并添加命令'export PATH =〜/ .composer / vendor / bin:$ PATH'

    我认为这里的其他用户确实有助于修复我的问题,因为laravel和composer似乎没有正确安装,尽管文件在适当的位置 .

相关问题