NodeJS / express: Cache e código de status 304

Quando eu recarregar um site feito com expresso, recebo uma página em branco com o Safari (não com o Chrome) porque o servidor NodeJS me envia um código de status 304.

Como resolver isso?

Claro, isso também pode ser apenas um problema do Safari, mas na verdade funciona bem em todos os outros sites, então também deve ser um problema no meu servidor NodeJS.

Para gerar as páginas, estou usando o Jade comres.render.

Atualizar: Parece que este problema ocorre porque o Safari envia'cache-control': 'max-age=0' na recarga.

Atualização 2: Agora tenho uma solução alternativa, mas existe uma solução melhor? Solução alternativa:

app.get('/:language(' + content.languageSelector + ')/:page', function (req, res)
{
    // Disable caching for content files
    res.header("Cache-Control", "no-cache, no-store, must-revalidate");
    res.header("Pragma", "no-cache");
    res.header("Expires", 0);

    // rendering stuff here…
}

Atualização 3: Então a parte completa do código é atualmente:

app.get('/:language(' + content.languageSelector + ')/:page', pageHandle);

function pageHandle (req, res)
{
    var language = req.params.language;
    var thisPage = content.getPage(req.params.page, language);

    if (thisPage)
    {
        // Disable caching for content files
        res.header("Cache-Control", "no-cache, no-store, must-revalidate");
        res.header("Pragma", "no-cache");
        res.header("Expires", 0);

        res.render(thisPage.file + '_' + language, {
            thisPage : thisPage,
            language: language,
            languages: content.languages,
            navigation: content.navigation,
            footerNavigation: content.footerNavigation,
            currentYear: new Date().getFullYear()
        });
    }
    else
    {
        error404Handling(req, res);
    }
}

questionAnswers(6)

yourAnswerToTheQuestion