我决定学习Symfony,现在我正在阅读“Practical Symfony”一书的开头。阅读“Web服务器配置”部分后,我有一个问题。
本手册描述了如何正确配置服务器:浏览器应该只能访问web /和sf /.../目录。本手册对此有很好的指导,并且作为Linux用户,我没有问题跟随它们并使一切都在我的本地机器上运行。但是,这涉及编辑VirtualHost条目,这些条目通常在常见的共享托管服务器上不容易。所以我想知道Symfony开发人员使用什么常见技术在共享托管环境中获得相同的结果?我想我可以通过在root中添加“deny from all”然后在允许的目录中覆盖该规则来实现。但是我不确定这是否是最简单的方法和通常使用的方式。
答案 0 :(得分:0)
如果您可以在public_html目录之外添加文件,请将所有目录放在那里,并将web目录中的所有文件放在public_html目录中(如果您的应用需要,请放置您的sf目录),在这种情况下只有网络文件可以在公共场所访问,但是如果你只能访问public_html目录并且不能在其外面添加目录,你可以将所有文件放到public_html中的文件夹中并保护它(我认为.htaccess可以做到这一点), web文件也应该在public_html中,但是你必须更改index.php的require_once(dirname(__FILE__).'/../config/ProjectConfiguration.class.php');
以指向ProjectConfiguration文件的新位置。
但由于这是一个共享托管环境,其他人可能仍然可以访问您的文件,但这主要取决于托管服务提供商如何设置其服务器。