Как закрыть сайт на реконструкцию
Когда Вы закрываете сайт на реконструкцию на определённый срок, то нужно сделать 2 шага: уведомить об этом всех приходящих пользователей, а также оставить доступ к сайту у Вас. Вот об выполнении этих 2-х шагов в этой небольшой статье мы и поговорим.
Первое дело, которое Вам нужно сделать - это создать страницу, куда будут перенаправляться все посетители. Допустим, пусть она называется "close.html". На этой странице напишите, что Ваш сайт закрыт на реконструкцию, можете добавить какую-нибудь картинку, если пожелаете. Далее эту страницу загрузите в корень сайта.
После создания и загрузки страницы для посетителей необходимо открыть доступ ко всему сайту для Вас. Для этого потребуется Ваш IP-адрес. Если Вы его не знаете, то зайдите сюда: http://2ip.ru. На этом сервисе Вы сразу увидите свой IP-адрес. Допустим, это будет: "95.243.188.124".
И, наконец, последний шаг - это добавление в файл .htaccess, находящийся в корне сайта, следующих строк:
RewriteEngine On
RewriteCond %{REMOTE_ADDR} !95.243.188.124
RewriteRule ^(.*)$ close.html [L,QSA]
Если перевести данный код, то он означает, что всех посетителей, чем IP-адрес отличен от "95.243.188.124", перенаправлять на страницу "close.html". Теперь ещё один важный момент. Вполне вероятно, что Вы добавляли картинку на страницу "close.html". Если это так, то Вам необходимо немного изменить код:
RewriteEngine On
RewriteCond %{REMOTE_ADDR} !95.243.188.124
RewriteCond %{REQUEST_FILENAME} !image.jpg
RewriteRule ^(.*)$ close.html [L,QSA]
Как видите, добавлена всего одна строчка. Если у Вас используются ещё картинки, то добавляйте и их.
Давайте подведём небольшой итог о том, как закрыть сайт на реконструкцию:
- Создать страницу для посетителя о закрытии сайта на реконструкцию.
- Загрузить эту страницу в корень сайта.
- Узнать свой IP-адрес.
- Создать файл .htaccess с необходимым кодом, либо добавить этот код, если .htaccess уже создан.
Вот и всё, теперь Вы будете заходить на сайт так, как будто никакой реконструкции нет, а вот все посетители будут видеть страницу о том, что сайт на ремонте.
-
- Михаил Русаков
Комментарии (28):
"Если у Вас используются ещё картинки, то добавляйте и их." В смысле?
Ответить
Смысл в том, что для каждой картинки нужно писать дополнительную строчку кода: RewriteCond %{REQUEST_FILENAME} !image.jpg Ведь картинок может быть на странице много, и для каждой надо прописать эту строчку.
Ответить
это для тех которые на странице close.html или на сайте?
Ответить
Только для тех изображений, которые на close.html
Ответить
спасибо!
Ответить
И ещё у меня такой вопрос. Вот я сделал файл .htaccess в корне локального сервера, добавил туда все строки кода, написал страничку close.php. И теперь такая проблема.... у меня не задаётся стиль для этой странички через CSS-файл. Печально!!! Как это можно исправить и почему такая херня?
Ответить
Либо прописать аналогично для изображений ещё одну строчку в .htaccess для css-файла, либо все стили отправить внутрь тега <style>.
Ответить
через тег <style> уже пробовал тоже самое... попробую проделать тоже самое что и с изображением...
Ответить
УРА! Получилось! Спасибо за помощь!
Ответить
Не советую использовать такой способ. За простотой храниться отказ поисковых роботов на некоторое время (до месяца) индексировать сайт после его реконструкции.
Ответить
А если RewriteCond не работает так как mod_rewrite.c не включен в настройках сервера? Есть ответ в этой статье: http://lifeexample.ru/razrabotka-i-optimizacia-saita/htaccess-zapretit-dostup.html
Ответить
здравствуйте,как узнать версию denwer?
Ответить
В файле readme.txt, который находится в корне.
Ответить
здравствуйте михаил,как исправить эту ошибку?--Ваш конфигурационный файл содержит настройки (пользователь root без пароля), которые относятся к привилегированному пользователю MySQL (по умолчанию). Ваш MySQL сервер запущен с этими настройками по умолчанию, открытый для вторжений, поэтому Вам настоятельно рекомендуется устранить эту дыру в безопасности.спасибо.
Ответить
Это не надо исправлять, на локальном сервере это нормально.
Ответить
михаил,а вот это что такое?-- Not Found The requested URL /Tools/phpMyAdmin/navigation.php was not found on this server. Подсказка Денвера Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл Z:/home/localhost/www/Tools/phpMyAdmin/navigation.php, которого не существует.хотя вроде все правильно делал.спасибо.
Ответить
Несуществующий файл, откуда Вы его взяли - не знаю, но если откуда-то по ссылке в самом phpmyadmin, то придётся его переустанавливать.
Ответить
Здравствуйте! А как открыть-то? Чтобы всем был виден опять? Очень нужно!! Помогите!
Ответить
Стереть то, что было написано в .htaccess
Ответить
Спасибо, что ответили так быстро. Стереть - это первое, что пришло на ум. Результат - ошибка 404 - not found
Ответить
До этого сайт работал? Если да, то чудес не бывает. Делайте всё внимательно.
Ответить
Да, до этого работал. Закрыла его для всех, кроме своего ip. Когда стерла содержимое файла, то сайт стал открываться только на главной странице. При попытке открыть любую ссылку, получаю ошибку 404.
Ответить
Возможно, когда он был закрыт, Вы там что-то поменяли, и после этого он перестал работать.
Ответить
Привет Михаил запустил свой сайт в тестовом режиме(danilovanton.p.ht). И данный способ меня настораживает ведь ip адрес может повторяться. Можно ли сделать такую же фильтрацию только не по ip а по сессии????
Ответить
Через htaccess с сессиями никак не получится. Можно было бы только все запросы пересылать в отдельный файл, где проверять наличие какой-нибудь секретной cookie, и если она есть, то отправлять туда, куда пользователь запрашивал, иначе на страницу реконструкции.
Ответить
Я поменял мнение на твой способ. Буду его использовать. А если например я зайду с другого компьютера когда он будет закрыт тут придется шагать на хостинг и там заменять файл .htaccess или можно просто создать секретный файл который переключал режим. Хотя у меня в панели управления просто стоит редактор кода! Да еще вопрос как можно сделать так что бы при чтении из файла в текстовое поле php код поступал а так только html код?!!!
Ответить
Михаил,мне кажется ваш способ закрытия сайта на реконструкцию не является безопасным.Что вы скажете если у меня к примеру ай-пи динамичнский сегодня 123.56.7.9 а при следущим подключении уже другой.А если даже и статически то , если какому-нибудь пользователю использующему динамический ай-пи будет назначен мой ай-пи то он сможет спокойно зайти.И зачем прописать изображения в файле .htaccess если можно их добавить на html страницу .На мой взляд лучше создать отдельную страницу , к примеру close.html там будет форма куда будет входить администратор и информационное сообщение
Ответить
Согласен!!
Ответить
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.