Как лучше всего обновлять весь сайт?

У меня есть сайт, который полностью переделан на существующий, готовый к работе. Я не могу найти достаточно информации для успешного перехода на новый сайт.

У меня есть новый сайт, доступный из поддоменов, который указывает на public_dev, В теории я мог бы переименовать public_html а затем переименовать public_dev в public_html, Проблема в том, что контент с текущего сайта будет кэшироваться.

По сути, я ищу способ попросить браузер не использовать его кеш, если он не был на сайте с определенной даты.

Должен ли я использовать .htaccess или же header() в PHP или оба?

3 ответа

Почему бы не взять пояс и подтянутый подход и использовать оба. Вы также можете установить метатеги в разделе заголовка контента (используя включаемый файл для обновлений всего сайта)

<META HTTP-EQUIV="Cache-Control" CONTENT="max-age=0">
<META HTTP-EQUIV="Expires" CONTENT="Tue, 01 Jan 1980 1:00:00 GMT">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">

Единственный верный способ аннулировать все кэши одновременно - это изменить URL-адреса, которые на самом деле видит браузер. Таким образом, ваш http://example.com/index.php становится чем-то вроде http://example.com/2/index.php. Все статические файлы также должны иметь новый URL-путь.

Вот почему Google и другие встраивают процесс "переименования активов" в свой код для всех статических ресурсов на основе хеша MD5. Таким образом, вы можете установить кеширование на 10 лет, точно зная, что любые запросы для /03b/c49/ef94589d54390435ab0943cd212.png всегда будут возвращать точное предназначенное содержимое, и этот URL никогда не будет запрашиваться, если он будет заменен "более новыми" активами., Но для этого требуется много работы, поэтому использование относительных URL-адресов с новым корневым путем, как упомянуто выше, более распространено.

Если вы обслуживаете свой сайт из прямых PHP-файлов, то у вас, вероятно, не будет проблем с кэшированием (если вы не внедрили какую-либо форму управления кэшем). Однако такие вещи, как таблицы стилей, изображения и другие файлы, могут по-прежнему кэшироваться браузером.

Лучше всего, вероятно, контролировать свой кеш через.htaccess и установить срок действия всего за день до того, как вы собираетесь развернуть свой веб-сайт: .htaccess - Как установить срок действия в прошлом?,

Другие вопросы по тегам