2012-03-18 2 views
1

На сервере производства Symfony автоматическое обновление удалило libapache2-mod-php5. Таким образом, после того, когда вы пытаетесь получить доступ к странице веб-сайта, он загружает файл index.php в виде текста:Кэш браузера после прошивки сервера

<?php 
    require_once(dirname(__FILE__) . '/../config/ProjectConfiguration.class.php'); 

    date_default_timezone_set('Europe/Paris'); 

    $configuration = ProjectConfiguration::getApplicationConfiguration('frontend', 'prod', false); 
    sfContext::createInstance($configuration)->dispatch(); 

This ubuntu forum показывает, как переустановить libapache2-мод-php5, чтобы решить эту проблему:

sudo apt-get install libapache2-mod-php5 
sudo a2enmod php5 
sudo service apache2 restart 

Теперь, если я открою сайт в другом браузере, он отлично работает. Тем не менее, хром сохранил сломанную версию в своем кеше, , и когда я обращаюсь к фиксированному веб-сайту, он по-прежнему загружает index.php вместо того, чтобы показывать домашнюю страницу.

Очевидно, что я хотел бы не говорить клиентам «очистить файлы cookie и историю просмотров» ... У вас есть серверное решение, чтобы заставить браузер не использовать его кеш?

Примечание: очистка кэша Symfony не помогает

ответ

2

Это выглядит как браузер никогда не посылает запрос на сервер. Так что вы ничего не можете сделать.

+0

Есть ли способ с Symfony, я могу проверить, что сервер получает запрос вообще? Знаете ли вы некоторые онлайн-ресурсы о том, как работает кеширование клиентов? –

+0

Сервер действительно не получает запрос. Я тестировал файл file_put_contents() в index.php. –