在prod模式下,一切都在使用此配置(app.php):
<?php
use Symfony\Component\HttpFoundation\Request;
/** @var \Composer\Autoload\ClassLoader $loader */
$loader = require __DIR__.'/../app/autoload.php';
include_once __DIR__.'/../var/bootstrap.php.cache';
$kernel = new AppKernel('prod', true);
$kernel->loadClassCache();
//$kernel = new AppCache($kernel);
// When using the HttpCache, you need to call the method in your front controller instead of relying on the configuration parameter
//Request::enableHttpMethodParameterOverride();
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);
当我转向“$ kernel = new AppKernel('prod',false);”如果为false,则显示不起作用。
这是我的config.yml(资产):
# ASSETIC BUNDLE
assetic:
debug: '%kernel.debug%'
use_controller: '%kernel.debug%'
filters:
cssrewrite: ~
我总是这样做:
- pbc cache:clear --env=prod --no-debug
- pbc assetic:dump --env=prod --no-debug
(php bin / console的别名pbc)
如果我检查代码,我可以看到所有.css都不是转储:
<head>
....
<link rel="stylesheet" href="/css/compiled/app.css">
<link rel="stylesheet" href="/css/compiled/user.css">
....
</head>
因为当AppKernel设置为true时,我可以看到:
<head>
.....
<link rel="stylesheet" href="/css/compiled/app_bootstrap.min_1.css">
<link rel="stylesheet" href="/css/compiled/app_dataTables.bootstrap.min_2.css">
<link rel="stylesheet" href="/css/compiled/app_font-awesome_3.css">
<link rel="stylesheet" href="/css/compiled/app_custom_front_4.css">
<link rel="stylesheet" href="/css/compiled/app_header_5.css">
<link rel="stylesheet" href="/css/compiled/app_footer_6.css">
<link rel="stylesheet" href="/css/compiled/user_user_1.css">
<link rel="stylesheet" href="/css/compiled/user_select2.min_2.css">
.....
</head>
我知道我无法在prod模式下将AppKernel设置为true,因此解决此问题非常重要。我读了很多话题,但我找不到解决方案...
有什么想法吗?
由于
答案 0 :(得分:0)
我有同样的问题。
删除了
中的缓存目录/ home / [user] / www / [site] / var / cache
并且工作正常
迁移到其他服务器时出现问题