2014-12-16 16 views
7

Ho problemi con laravel 4. In qualche modo l'intestazionelaravel invio di no-cache intestazione

Cache-Control: no-cache 

è sempre di essere inviato nella risposta in tutte le pagine all'interno del mio sito. Non riesco a trovare dove o come cambiarlo.

Cache-Control: no-cache

Dal momento che questo sta influenzando tutti i miei controllori dove sto presentando una vista con View::Make avrei davvero come un modo per cambiare questo a livello globale.

+1

È possibile modificare la domanda e aggiungere un esempio di controller che si desidera avere un'altra intestazione 'Cache-Control'. Inoltre quale valore vuoi invece? – lukasgeiter

risposta

6

Se si desidera utilizzare la cache, è possibile modificare il suo comportamento in oggetto "risposta" (ritornato da un metodo di controllo in questo esempio):

public function myControllerMethod() { 
    $response = Response::make('something'); 
    $response->setLastModified(new DateTime("now")); 
    $response->setExpires(new DateTime("tomorrow")); 
    return $response; 
} 

Funziona nel mio environnement, lo spero Aiuto.

EDIT:

Se si desidera impostare globalmente, si può provare questo (in app/start/ directory):

App::after(function($request, $response) { 
    $response->setLastModified(new DateTime("now")); 
    $response->setExpires(new DateTime("tomorrow")); 
}); 
+2

Grazie, ma poiché questo ha effetto su tutti i miei controller (non solo su uno solo) - è comunque possibile impostare l'intestazione globalmente? Uso View :: make per presentare le mie visualizzazioni. –

+0

Ok, ho modificato la mia risposta –

0

di aiutare qualcun altro cercando di trovare la risposta per laravel 5.4, questo sarebbe:

namespace App\Http\Controllers; 
use DateTime; 

class MyController extends Controller 
{ 
    public function index() 
    { 
    return response('my content here') 
       ->setLastModified(new DateTime("now")) 
       ->setExpires(new DateTime("tomorrow")); 
    } 
} 

Vedi anche: https://laravel.com/docs/5.4/responses per ulteriori informazioni su come ottenere un contenuto diverso (modelli ecc.) in una chiamata di risposta.

Problemi correlati