所以,我正在尝试在子域上安装symfony,我的布局是这样的:
Root
public_html/symfony
(子域名为symfony,其webroot为public_html / symfony)
我正在通过composer安装symfony,我将它安装在
php composer.phar create-project symfony/framework-standard-edition /home1/user/public_html/symfony
当我尝试访问时:
http://symfony.domain.com/web/config.php
我得到:此脚本只能从localhost访问。
当我尝试访问时:
http://symfony.domain.com/config.php
我找不到主持人404
我在做什么不合情理的?
答案 0 :(得分:1)
查看config.php
它位于Symfony/web/config.php
第7至13行:
if (!in_array(@$_SERVER['REMOTE_ADDR'], array(
'127.0.0.1',
'::1',
))) {
header('HTTP/1.0 403 Forbidden');
exit('This script is only accessible from localhost.');
}
一种选择是注释掉整个部分或将您自己的IP添加到给定的数组中。
if (!in_array(@$_SERVER['REMOTE_ADDR'], array(
'127.0.0.1',
'::1',
'YOUR_OWN_IP_HERE',
)))
...
这与安全问题有关,因此没有人可以访问config.php,除非他有权访问它。 没有它,基本上每个拥有链接或发现它的人都可以访问该文件。
如果您只是在config.php
中对此进行评论,请提醒您在上线/生产环境时撤消此操作。
否则每个人都可以改变你的Symfony配置。