Expressで作成されたWebサイトをリロードすると、NodeJSサーバーから304ステータスコードが送信されるため、Safari(Chromeではなく)で空白のページが表示されます。
これを解決する方法は?
もちろん、これはSafariの問題である可能性もありますが、実際には他のすべてのWebサイトで正常に機能するため、NodeJSサーバーでも問題になるはずです。
ページを生成するために、私はJadeを使用していres.renderます。
更新: Safari'cache-control': 'max-age=0'がリロード時に送信するため、この問題が発生するようです。
更新2:回避策がありますが、より良い解決策はありますか?回避策:
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…
}
更新3: したがって、完全なコード部分は現在次のとおりです。
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);
    }
}