Как закрыть сайт на WordPress (включение режима разработки)

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

Функция "wp_maintenance" проверяет существование файла ".maintenance" в корневой папке сайта. Если файл существует, то вместо сайта на экран будет выведен текст-заглушка, а дальнейшая загрузка сайта будет остановлена. Сама система WordPress использует этот механизм при обновлении, закрывая сайт от посетителей на время апгрейда.

У функции "wp_maintenance" нет аргументов и параметров:
wp_maintenance();
Чтобы изменить содержание заглушки сайта, необходимо создать файл по адресу /wp-content/maintenance.php. Приведём пример содержания такого файла:
<?php
wp_load_translations_early();

$protocol = $_SERVER["SERVER_PROTOCOL"];
if ( 'HTTP/1.1' != $protocol && 'HTTP/1.0' != $protocol )
   $protocol = 'HTTP/1.0';
header( "$protocol 503 Service Unavailable", true, 503 );
header( 'Content-Type: text/html; charset=utf-8' );
header( 'Retry-After: 600' );
?>

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"<?php if ( is_rtl() ) echo ' dir="rtl"'; ?>>
   <head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title>Сайт закрыт на обслуживание</title>
   </head>
   <body>
      <div style="max-width:800px; margin:100px auto; text-align:center;">
         <h1>Сайт закрыт на техническое обслуживание</h1>
         <p>Пожалуйста, подождите несколько минут...</p>        
      </div>
   </body>
</html>
Чтобы отключить режим обслуживания сайта, необходимо удалить файл ".maintenance" из корня сайта. Тогда заглушка будет снята и сайт станет доступен для посетителей.

Помимо этого существует механизм снятия заглушки по таймеру. Достаточно в файл ".maintenance" добавить переменную с названием "$upgrading" со значением равным количеству UNIX секунд, по истечении которого (плюс 600 секунд) будет снята блокировка с сайта. То есть содержание файла ".maintenance" получится таким:
<?php
$upgrading = 1605885507;
MouseDC.ru - хостинг, виртуальный хостинг, покупка доменов, проверка доменов, WHOIS, курсы создания сайтов, вебинары по созданию, курсы разработки сайтов, доработка сайтов, сопровождение сайтов, разработка сайтов, техподдержка сайтов
Была ли эта статья полезна? Есть вопрос?
Cмотрите другие статьи: