8
  1. 刚开始与作曲家合作。
  2. <documentroot>/vendor/在我的目录中安装了一些带有 composer 的东西。

  3. 现在,每个人(每个黑客)都可以composer.json http://foo.tld/composer.json阅读我的

  4. 然后他们知道,安装了哪些软件。然后他们可能会使用http://foo.tld/vendor/symfony/ 之<documentroot>/vendor/类的 URL 来探测我的目录。

我应该怎么办?

a) 我可以:

  • chmod 0600 composer.json
  • 将 a.htaccess放入供应商目录中,以拒绝所有访问

b) 将供应商目录移到文档根目录之外(这在共享主机环境中并不总是可行的。

4

2 回答 2

7

您应该将其移出 DOCUMENT_ROOT。

框架应用程序的通常结构是顶级目录(包含内容以及 composer.json 文件)不是 DOCUMENT_ROOT。通常有一个专门的目录,里面可能命名为“public”或“htdocs”,其中包含“the”中央 index.php 文件旁边的所有常用资产(CSS、JS、图片)。

如果您无法通过共享主机获得该布局,您可能应该继续,因为您无法隐藏文件以防止直接 HTTP 访问。

于 2014-05-12T01:21:22.873 回答
0

您在示例链接中提到了 Symfony。如果您使用的是 Symfony,如果您的项目在 .../project 中,那么您的文档根目录是 .../project/web,这就是您告诉 Apache 或您正在使用的服务器的内容。其他一切都是您的“应用程序”(我们称之为),不需要向公众提供。

于 2014-05-12T01:27:01.830 回答