2015-09-04 20 views
7

Ho un problema con Symfony2. Tutto funziona bene e un giorno ... inizio i problemi ...Symfony2 app_dev.php solo errore 500 Fine prematura dello script

Quando apro una pagina, ottengo l'errore 500. Il server restituisce questo errore, non Symfony. Se aggiorno, visualizzo la pagina senza errori. Ma quando apro una nuova pagina (nuovo URL, stesso sito), l'errore viene di nuovo.

Ho provato a ricaricare Apache. Ho provato a rimuovere tutto nella cache e nei registri. Il file della mia console, il file app.php, il file app_dev.php hanno umask (0000) non commentato.

Questa è l'ultima linea di tronchi di Symfony2 quando ho l'errore:

[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "JMS\I18nRoutingBundle\EventListener\CookieSettingListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\Security\Http\Firewall\ContextListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] security.DEBUG: Write SecurityContext in the session [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bridge\Monolog\Handler\FirePHPHandler::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bridge\Monolog\Handler\ChromePhpHandler::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\EsiListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\Security\Http\RememberMe\ResponseListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\SaveSessionListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\StreamedResponseListener::onKernelResponse". [] [] 
[2015-09-04 11:20:57] event.DEBUG: Notified event "kernel.terminate" to listener "Symfony\Bundle\SwiftmailerBundle\EventListener\EmailSenderListener::onTerminate". [] [] 

Il log di errore apache:

[Fri Sep 04 11:24:49 2015] [error] [client my.ip.here] Premature end of script headers: app_dev.php 

Il problema non esiste in prod, quando uso app. php

Il syslog non ha linea su questo. Non ho problemi su altri siti web sullo stesso server. Non ho problemi di spazio su disco.

Qualcuno ha un'idea? thx


Il file app_dev.php:

<?php 


use Symfony\Component\HttpFoundation\Request; 
use Symfony\Component\Debug\Debug; 


// If you don't want to setup permissions the proper way, just uncomment the following PHP line 
// read http://symfony.com/doc/current/book/installation.html#configuration-and-setup for more information 
umask(0000); 

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

$loader = require_once __DIR__.'/../app/bootstrap.php.cache'; 
Debug::enable(); 

require_once __DIR__.'/../app/AppKernel.php'; 

$kernel = new AppKernel('dev', true); 
$kernel->loadClassCache(); 
$request = Request::createFromGlobals(); 
$response = $kernel->handle($request); 
$response->send(); 
$kernel->terminate($request, $response); 

Per la configurazione di Apache, la sua configurazione isp config, ho solo aggiunto questo per questo sito:

direttiva

Apache:

DocumentRoot /var/www/clients/client2/web56/web/symfony/web/ 
FcgidMaxRequestLen 20000000 

php.in i:

apc.shm_size = 256M 
realpath_cache_size = 4096k 
realpath_cache_ttl=7200 
session.auto_start = 0 
xdebug.remote_autostart=0 
xdebug.remote_enable=0 
xdebug.profiler_enable=0 

In config_dev.yml, se rimuovere FirePHP e chromephp dalla configurazione monolog, il problema è risolto. Non penso che sia una buona soluzione, qualcuno ha un'altra idea?

+1

La prego passato app_dev.php del file e la configurazione di Apache? – Soullivaneuh

+1

Questo errore può essere il numero di cose. Vedi questo link: http://www.liquidweb.com/kb/apache-error-premature-end-of-script-headers/ –

+0

Ho pubblicato il mio file app_dev.php. –

risposta

11

Ho commentato FirePHP e chromephp in config_dev.yml:

imports: 
    - { resource: config.yml } 

framework: 
    router: 
     resource: "%kernel.root_dir%/config/routing_dev.yml" 
     strict_requirements: true 
    profiler: { only_exceptions: false } 

web_profiler: 
    toolbar: true 
    intercept_redirects: false 

monolog: 
    handlers: 
     main: 
      type: stream 
      path: "%kernel.logs_dir%/%kernel.environment%.log" 
      level: debug 
#  firephp: 
#   type: firephp 
#   level: info 
#  chromephp: 
#   type: chromephp 
#   level: info 

assetic: 
    use_controller: true 

#swiftmailer: 
# delivery_address: [email protected] 
Problemi correlati