我们应该将composer.json文件放在哪里以安装额外的PHP库?

我们应该将composer.json文件放在哪里以安装额外的PHP库?,php,apache,composer-php,Php,Apache,Composer Php,我已经创建了一个新的Linode服务器并安装了一个LAMP堆栈。现在,我正试图为Stripe安装一个PHP额外库。我没有手动安装这些库,而是尝试使用composer(建议使用composer)安装它们 我确实在我的Ubuntu 16.0.4系统上安装了composer。PHP正在运行;我可以转到test.php文件并查看它的工作情况 在提供的说明中,它表示要将以下内容添加到composer.json中: { "require": { "stripe/stripe-php": "4.*

我已经创建了一个新的Linode服务器并安装了一个LAMP堆栈。现在,我正试图为Stripe安装一个PHP额外库。我没有手动安装这些库,而是尝试使用composer(建议使用composer)安装它们

我确实在我的Ubuntu 16.0.4系统上安装了composer。PHP正在运行;我可以转到test.php文件并查看它的工作情况

在提供的说明中,它表示要将以下内容添加到composer.json中:

{
  "require": {
    "stripe/stripe-php": "4.*"
  }
}
大概在那之后我就执行了

composer install
它将使用composer.json安装指定的库

我不清楚的是,当我这样做时,composer.json的位置应该在哪里

从我在谷歌搜索中读到的内容来看,到目前为止,我发现它应该在“项目根目录”中

我不知道那是什么意思

我已经安装了Apache。我有一个启用的站点。我知道那个网站的根。但是我不认为我应该在虚拟服务器的html根目录中安装PHP库,是吗?服务器上是否有一些通用的地方,我会安装额外的PHP库,以便它们可以普遍使用?也许是一些与PHP相关的目录


有什么建议吗?谢谢。

本例中的项目根是代码结构的第一层。通常情况下,您会对代码进行结构化,这样您就拥有了不希望公众访问的应用程序代码,例如此级别的类。然后,您就有了一个公共目录,可以在其中放置html/php、css、图像和index.php

这样,webserver根目录(www.mywebsite.com)指向index.php,用户就无法向上遍历以查看类


本例中的项目根是代码结构的第一层。通常情况下,您会对代码进行结构化,这样您就拥有了不希望公众访问的应用程序代码,例如此级别的类。然后,您就有了一个公共目录,可以在其中放置html/php、css、图像和index.php

这样,webserver根目录(www.mywebsite.com)指向index.php,用户就无法向上遍历以查看类


这是一个信息量很大的图表。在我的情况下,index.php位于启用虚拟域的public_html目录中。路径类似于/var/www/html/www.mywebsite.com/public.html。我假设访问该网站的人只能从public_html及以下页面查看。因此,composer.json的合适位置以及它安装的库是否位于/var/www/html/www.mywebsite.com级别?与public_html目录的级别相同?是的,如果我理解正确,这正是您想要放置它的位置。它们将所有项目依赖关系保存在一个位置,这在您有多个项目时非常有用。这是一个信息量非常丰富的图表。在我的情况下,index.php位于启用虚拟域的public_html目录中。路径类似于/var/www/html/www.mywebsite.com/public.html。我假设访问该网站的人只能从public_html及以下页面查看。因此,composer.json的合适位置以及它安装的库是否位于/var/www/html/www.mywebsite.com级别?与public_html目录的级别相同?是的,如果我理解正确,这正是您想要放置它的位置。这些工具将所有项目依赖项保存在一个位置,这在您有多个项目时非常有用。