Какой бы лучший способ отображать сайт под техобслуживанием для веб-сайтов php. Есть ли какая-либо конфигурация в IIS или файле Php.ini, которую я могу использовать.Or, я должен просто загрузить офлайн-страницу на основе моего параметра в файле конфигурации. Так что если параметр - true load the offline.html, или если это 0 загружать страницу входа. Пожалуйста, дайте мне знать ваши мысли об этом.
Я добавил +1 к Крису, а затем понял, что с ним действительно важны проблемы безопасности. OK, index.php
имеет более низкий приоритет, чем index.html
, но это не значит, что пользователь не может войти в браузер, например: www.address.com/something. В этом случае действительно непредсказуемо, как будет реагировать сайт. В некоторых CMS он будет загружать подстраницу, а в некоторых других нет... Иногда в .htaccess
все неизвестны для перенаправления index.php...
В этом случае, если вы вносите изменения на свой сайт (в Интернете - что вам не нужно) во время перезаписи index.html
помните, что все, что вы меняете, может быть достигнуто пользователем. Поэтому, если вы измените систему входа в систему, и появится ошибка, по которой каждый может войти без пароля, кто-то может ввести какой-либо другой URL-адрес или отправиться на вашу страницу из Google и что-то уничтожить.
Чтобы сделать его ответом: вы можете перезаписать главную страницу по умолчанию с помощью index.html, но это действительно хорошая идея, чтобы изменить.htaccess, чтобы переписать все в index.html, просто для обеспечения безопасности во время редактирования или загрузки файлов.
PS. Я думаю, что это стоит упомянуть в новом ответе, поскольку это действительно огромная дыра в безопасности.
Я нашел отличную идею. Если все ваши запросы перенаправляются на index.php - что обычно есть, если вы хотите, вы можете написать простой, если в index.php:
if ($_SERVER['HTTP_USER_AGENT'] != 'wfuia eu2348 1029 38efoa ojei') {
echo 'Site under maintence';
}
else {
// Your old index.php
}
Затем измените свой пользовательский агент на "wfuia eu2348 1029 38efoa ojei" и не стесняйтесь тестировать все. Я думаю, что это достаточно безопасно, чтобы проверить сайт на несколько минут и удалить эти несколько строк после. Пользовательский агент должен быть сложным, и единственный способ взломать его - взять на себя ваши пакеты интернет-передачи и переписать его, что не так очевидно. Надеюсь, поможет.
Обычно index.html
имеет приоритет над index.php
, если вы используете настройки Apache по умолчанию. Просто добавьте файл index.html
с сообщением об обслуживании, а затем удалите его, как только вы закончите.
Яцек прав - это не мешает кому-либо получить доступ к чему-либо другому, кроме основного index.php
.
Вы можете использовать файл .htaccess
в своем веб-каталоге, чтобы люди не могли получить доступ к вашему сайту во время его обслуживания. Поместите его в свой корень и добавьте что-то вроде:
Order Deny,Allow
Deny From All
<Files ~ "index.html$">
Allow from all
</Files>
Тогда люди смогут только получить доступ к файлу index.html. Сделайте это на странице "Под обслуживанием".