php - Symfony 2 app.php 与 app_dev.php

标签 php symfony

我正在使用 Symfony 2 php 框架,它有几个不同的使用环境:开发、生产和测试。 app.php 前端 Controller 访问生产环境,app_dev.php 前端 Controller 访问开发环境。任何熟悉 Symfony 的人都可以建议将开发环境限制为开发人员的最佳方法是什么?我不希望我网站的用户可以查看我的 Web 应用程序的开发版本,他们应该仅限于使用生产环境。

最佳答案

好吧,开箱即用,标准发行版在 top of the dev controller 处有一个基于 IP 的保护检查.

// 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(
        '127.0.0.1',
        '::1',
    ))
) {
    header('HTTP/1.0 403 Forbidden');
    exit('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.');
}

但是,正如评论所指出的那样,您不必受制于这种方法。例如,如果您正在运行 Apache,您可以 add basic HTTP Authentication到开发和测试 Controller 。

关于php - Symfony 2 app.php 与 app_dev.php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10304907/

相关文章:

java - 在 Java 中通过 Httppost 发送 JSON 时遇到问题,请帮助

mongodb - ODM 查询生成器 : Is there an "inverse in" operator, 或等效操作?

php - 如何在 Symfony 2.4 中使用缓存 id 和缓存生命周期选项缓存学说 "findOneBy()"查询?

php - Symfony 爬虫 : how to check that a link to a particular page exists

php - 正则表达式,只允许特定格式。 "John-doe"

php - Base64 编码的图像未通过 POST 发送

php - 为什么调整后的 PNG 图像比原始图像大很多?

php - symfony 功能测试的 500 状态代码

Symfony 应用程序 - Doctrine fatal error - 内存耗尽而不留痕迹

php - MySQL 查询未在 phalcon 中执行