首页 > 解决方案 > SYmfony - 403 - 禁止:访问被拒绝。或者将应用程序代码上传到新服务器时只是空白页

问题描述

新工作新要求,我的老板只有一个symfony生产版本,我的任务是,上传这个应用程序,手动更改路由和数据库,比如克隆所有应用程序,清理现金并将其放入新的cpanel新客户端,我已经完成了但是当它在同一台服务器上不同的 cpanel 上时,它可以工作,现在当使用相同的步骤将代码上传到其他托管服务时,没有任何作用,启动应用程序的 web 文件夹没有授予权限

我检查了 htaccess 文件和我知道的任何其他参数,

我在 app_dev 上注意到了这一点

// This check prevents access to debug front controllers that are deployed by accident to production servers.
// Feel free to remove this, extend it, or make something more sophisticated.
if (isset($_SERVER['HTTP_CLIENT_IP'])
    || isset($_SERVER['HTTP_X_FORWARDED_FOR'])
    || !(in_array(@$_SERVER['REMOTE_ADDR'], array('41.251.179.80','127.0.0.1', 'fe80::1', '::1')) || php_sapi_name() === 'cli-server')
) {
    header('HTTP/1.0 403 Forbidden');
    exit('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.');
}

删除此行的事件不起作用

symfony 安全性是如何工作的,我该如何解决这个问题

标签: php.htaccesssymfonyserverapp-config

解决方案


如果您要将其移动到新服务器,您很可能需要安装您的作曲家依赖项。执行 composer install 为您的环境引入所有受支持的项目。

app_dev.php 在 Symfony 3 中使用,它允许您访问站点的“开发”版本,如果安装了 Symfony 工具栏,它也将包括它。

检查你的 var/logs 目录寻找线索,你很可能需要清除 Symfony 缓存。

此外,在您的新服务器上,您需要将您的 apache 文档根目录指向 Symfony 项目中的 public 或 www 文件夹。根据您的设置会有所不同,因为这可以是自定义文件夹。


推荐阅读