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服务器无法访问它的原因。将其安装到用户主目录解决了此问题。