RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 552223
Accepted
Pavel Sokolov
Pavel Sokolov
Asked:2020-08-05 16:59:17 +0000 UTC2020-08-05 16:59:17 +0000 UTC 2020-08-05 16:59:17 +0000 UTC

交响乐。过渡到生产

  • 772

我正在尝试将 Symfony 3 置于生产模式。我是否正确理解为此从地址中删除/app_dev.php并重置缓存就足够了?

php bin/console cache:clear --env=prod --no-debug

之后,当我访问该站点时,我再次看到调试栏,上面写着Environment dev,即 请求通过web/app_dev.php。

我究竟做错了什么?

php
  • 2 2 个回答
  • 10 Views

2 个回答

  • Voted
  1. Иван Пшеницын
    2020-08-06T06:57:05Z2020-08-06T06:57:05Z

    服务器设置

    确保服务器将请求定向到根目录下的正确文件 (app.php | app_dev.php)。为此,只需将它放在 app.php 文件的开头exit('true');,打开站点的根页面,一切都会变得清晰:如果你看到它true- 文件是正确的,如果你没有看到它 - 看看服务器设置。服务器设置取决于您使用的是 apache 还是 nginx。如果是apache - 查看站点 .htaccess 文件的根目录。除其他外,它应该包含行RewriteRule .? %{ENV:BASE}/app.php [L]。如果您的文件是原始文件,那么那里的一切都应该是有序的。对于nginx,不幸的是,事情有点复杂,必须手动设置。类似这个块的东西应该出现在你的配置中,这样对根的请求就可以到达 app.php:

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index app.php;
        include fastcgi_params;
    }
    

    应用程序.php

    如果请求进入正确的文件 app.php,但该站点仍以开发模式打开,则您需要检查 app.php 的内容。例如,这个文件的代码对我来说是这样的:

    <?php
    
    use Symfony\Component\ClassLoader\ApcClassLoader;
    use Symfony\Component\HttpFoundation\Request;
    
    $loader = require_once __DIR__.'/../app/bootstrap.php.cache';
    
    $apcLoader = new ApcClassLoader(strtolower($_SERVER['HTTP_HOST']) . "_", $loader);
    $loader->unregister();
    $apcLoader->register(true);
    
    require_once __DIR__.'/../app/AppKernel.php';
    
    $kernel = new AppKernel('prod', false);
    $kernel->loadClassCache();
    
    $request = Request::createFromGlobals();
    $response = $kernel->handle($request);
    $response->send();
    $kernel->terminate($request, $response);
    

    注意线$kernel = new AppKernel('prod', false);,在问题的上下文中它是最重要的。这是将环境设置为第一个参数并将调试设置为第二个参数的地方。在这里你应该有这些值。

    此外,您可能需要运行命令来启动 prod 环境

    php ./app/console assetic:dump
    

    生成所有必要的静态。但是这里的情况是模棱两可的,也许您的系统配置为动态生成静态。

    • 3
  2. Best Answer
    Pavel Sokolov
    2020-08-08T19:35:15Z2020-08-08T19:35:15Z

    Symfony 与它无关。它是关于 Homestead(来自 Laravel 的同一个虚拟机)。事实证明,如果在Homestead.yaml该部分sites添加type: symfony

    - map: site.app
      to: /home/vagrant/Code/site/web
      type: symfony
    

    然后 VM 在“开发”模式下为 Symfony 创建一个配置,其中/etc/nginx/sites-enabled/site.app写入location路径app_dev.php

    location / {
      try_files $uri $uri/ /app_dev.php?$query_string;
    }
    

    这是值得首先看的。

    • 1

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    如何停止编写糟糕的代码?

    • 3 个回答
  • Marko Smith

    onCreateView 方法重构

    • 1 个回答
  • Marko Smith

    通用还是非通用

    • 2 个回答
  • Marko Smith

    如何访问 jQuery 中的列

    • 1 个回答
  • Marko Smith

    *.tga 文件的组重命名(3620 个)

    • 1 个回答
  • Marko Smith

    内存分配列表C#

    • 1 个回答
  • Marko Smith

    常规赛适度贪婪

    • 1 个回答
  • Marko Smith

    如何制作自己的自动完成/自动更正?

    • 1 个回答
  • Marko Smith

    选择斐波那契数列

    • 2 个回答
  • Marko Smith

    所有 API 版本中的通用权限代码

    • 2 个回答
  • Martin Hope
    jfs *(星号)和 ** 双星号在 Python 中是什么意思? 2020-11-23 05:07:40 +0000 UTC
  • Martin Hope
    hwak 哪个孩子调用了父母的静态方法?还是不可能完成的任务? 2020-11-18 16:30:55 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    user207618 Codegolf——组合选择算法的实现 2020-10-23 18:46:29 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    Arch ArrayList 与 LinkedList 的区别? 2020-09-20 02:42:49 +0000 UTC
  • Martin Hope
    iluxa1810 哪个更正确使用:if () 或 try-catch? 2020-08-23 18:56:13 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5