为什么Symfony 2安装到Web根目录?

use*_*356 1 php symfony

我正在寻找下载和学习Symfony 2.我之前没有真正看过PHP框架.

我知道这里不允许讨论,但我很确定我的问题不是主观的,我的问题有一个明显的答案.

为什么Symfony 2下载到公共Web根目录?

当然它应该是非公开的,只有HTML/CSS等应该公开?

显然我错了,但是会理解这个的原因.

这是不是意味着有人可以访问http://mysite.com/symfony/classes/database.php等(不是特定的URL,只是为了突出我的观点)并运行各种脚本?显然这可能只是一个类文件,但它仍然没有;对我来说似乎是对的.

此外,我想在同一框架上运行5或6个不同的站点.如果它安装在Web根目录中,那么这并不意味着我需要为每个站点(在每个站点的Web根目录中)安装整个Symfony代码库 - 就好像它是在Web根目录之外托管的那样,每个站点都可以引用它(例如'../../symfony/classes/database.php'等)(只要所有站点都在同一台服务器上).

我必须错过一些非常明确和明显的东西.

MrG*_*ass 8

虽然许多框架确实将所有代码放在Web根目录中,但Symfony却没有.

相反,标准发行版有一个/ web文件夹,您应该创建您的webroot.

如果您所在的服务器上无法将Webroot配置为Symfony项目文件夹,则可以使用webroot文件夹和Symfony Web文件夹之间的符号链接.这是共享主机方案等常见做法.