Php 如何包括作曲家';如果它是';在我的web服务器根目录之外?

Php 如何包括作曲家';如果它是';在我的web服务器根目录之外?,php,ubuntu,composer-php,Php,Ubuntu,Composer Php,我应该这样做: require_once 'vendor/autoload.php'; 但是Composer的供应商文件夹已经安装在我的Ubuntu机器的主目录中 我得到这个错误: PHP Fatal error: require_once(): Failed opening required '/vendor/autoload.php' (include_path='.:/usr/share/php') 如果该文件位于web服务器目录之外,我应该如何要求该文件 我尝试了require

我应该这样做:

require_once  'vendor/autoload.php';
但是Composer的供应商文件夹已经安装在我的Ubuntu机器的主目录中

我得到这个错误:

PHP Fatal error:  require_once(): Failed opening required '/vendor/autoload.php' (include_path='.:/usr/share/php') 
如果该文件位于web服务器目录之外,我应该如何要求该文件

我尝试了
require_once$HOME./vendor/autoload.php'但不起作用。
我做错了什么


编辑:我意识到Composer安装在根主目录中,这就是我的web服务器无法访问它的原因。将其安装到用户主目录中解决了此问题。

尝试使用
$\u SERVER['home']
-阅读有关
$\u SERVER
的更多信息

其他选择:

  • 文件的完整路径
  • 文件的相对路径

  • 使用完整路径,或根据需要使用
    。/
    。感谢您的回复。我尝试了$HOME.'/vendor/autoload.php'但似乎不起作用,
    $HOME
    的价值是什么?这不是一个标准的PHP变量。是的,它被证明是错误的。从另一个帖子中得到这一点。如果你没有必要的理由让“代码”> ProtoSub/Cux>文件夹远离项目的根目录,那就修复你的作曲家安装。当图书馆只有一个SAPI运行时上下文时,这是很好的,但是如果其中的一部分用于CLI类型的应用程序,很可能会失败。我意识到Composer安装在根主目录中,这就是我的web服务器无法访问它的原因。将其安装到用户主目录解决了此问题。