2014-10-19 4 views
0

после работы с моим проектом в dev mod, я нашел некоторые проблемы с prod на OVH. это показывает мне пустую страницу! Я пытаюсь следить за проблемой на app.php, и я обнаружил, что проблема сохраняется с выполнением $response = $kernel->handle($request); и она не регистрируется на prod.Symfony2.3 production page blank 500

поэтому, когда я меняю строку на app.php: $kernel = new AppKernel('prod', false); с $kernel = new AppKernel('dev', false); это хорошо работает !!!

вот мой app.php

<?php 

/* 
* This file is part of the Sonata package. 
* 
* (c) Thomas Rabaix <[email protected]> 
* 
* For the full copyright and license information, please view the LICENSE 
* file that was distributed with this source code. 
*/ 
umask(0000); 
require_once __DIR__ . '/../app/bootstrap.php.cache'; 
require_once __DIR__ . '/../app/AppKernel.php'; 

//use Symfony\Component\HttpFoundation\Request; 

// if you want to use the SonataPageBundle with multisite 
// using different relative paths, you must change the request 
// object to use the SiteRequest 
use Sonata\PageBundle\Request\SiteRequest as Request; 

$request = Request::createFromGlobals(); 

$kernel = new AppKernel('prod', false); 

$response = $kernel->handle($request); 
$response->send(); 

$kernel->terminate($request, $response); 

EDIT: в DEV и прод тест локального режима он хорошо работает с

php app/console cache:clear --env=prod --no-debug 
php app/console assets:install web_directory 
php app/console assetic:dump web_directory 

я должен добавить или установить php5 на моем проекте?

EDIT: мой проект включает в себя: соната-проект, fosUserBundle и т.д ...

EDIT

проблема была на config_prod.xml

doctrine: 
    orm: 
     entity_managers: 
      default: 
       metadata_cache_driver: apc 
       query_cache_driver: apc 
       result_cache_driver: apc 

intil прямо сейчас после того, как он вернет ошибку 500! Зачем ? из-за apc не был включен! так что мой вопрос, как включить apc на OVH pro!

+2

Насколько я помню, вам нужно «кэшировать: clear --env = prod' –

+0

, вы должны зайти в свой php.ini и включить displayerrors. он точно скажет вам, что не так. –

+0

Поскольку это производство, вы должны включить php-журнал в php.ini, а не показывать ошибки на дисплее. – SenseException

ответ

0

Перейти к Сети/config.php и комментарии Ot следующие строки:

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.'); 
} 

Это позволит config.php называться с «ехЬегп». Не забудьте удалить комментарии после того, как вы проверили все.

Если у вас есть консольный доступ на производственном сервере, введите корневую директорию вашего проекта и вызовите php app/check.php для запуска проверок на консоли.

+0

config.php хорошо работает, когда я комментирую эти строки, у меня нет доступа к консоли ... но когда я следил за app.php и когда он достиг линии $ response = $ kernel-> handle ($ request); он блокирует и возвращает мне пустую страницу! – Mirlo