Мое приложение полностью построено. Но иногда мне нужно снести его для обслуживания. Итак, я создал файл .htaccess, и теперь, когда пользователи пытаются открыть приложение, они перенаправляются на другую страницу с изображением обслуживания в ней. Проблема в том, что после того, как суперадмины завершат обслуживание, им нужно проверить, нормально ли работает приложение. Но нет никакого способа сделать это, поскольку даже они попадают на страницу обслуживания. Одно из решений - создать среду тестирования. Но есть ли у них другое простое решение?
Видимость приложения для суперадмина в режиме обслуживания
Ответы (1)
Если у вас есть статический IP-адрес в файле .htaccess, вы можете попробовать сделать:
RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} !^11\.111\.111\.111
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ http://domain.com/maintenance.html [R=307,L]
При необходимости Ypu может указать несколько строк REMOTE_ADDR для более чем 1 IP-адреса администратора.
Это отправит любого, чей IP-адрес НЕ упомянут, на страницу обслуживания.
АЛЬТЕРНАТИВА - это обработка режима обслуживания в PHP ... в основном тогда вы можете иметь список IP-адресов в php-скрипте и показывать страницу обслуживания или запускать приложение как обычно ... очевидно, что такое решение потребует для правильного размещения в потоке вашего кода и некоторого простого механизма для включения / отключения сайта.
person
Brian
schedule
29.10.2012
@hakre, дал мне эту ссылку. И ситуация очень похожа на мою. Единственная разница в том, что у нас есть несколько суперадминов, которые могут получить доступ из разных мест.
- person Abhishek Saha; 29.10.2012
Вы просто добавляете больше строк% {REMOTE_ADDR} для любых IP-адресов.
- person Brian; 29.10.2012
@AbhishekSaha: Это несправедливо. Теперь, когда есть ответ, вы начинаете прорабатывать вопрос. Это неконструктивно.
- person hakre; 29.10.2012
И я тоже считаю, что это наиболее реальное решение. Буду ждать еще нескольких ответов, иначе приму ваше решение. Спасибо.
- person Abhishek Saha; 29.10.2012
@hakre, мне очень жаль. Я не отрицаю никакого решения. Я просто ищу варианты.
- person Abhishek Saha; 29.10.2012
И это как раз часть проблемы. Пожалуйста, ознакомьтесь с принципами работы этого веб-сайта. Речь идет не только о вас, но и о будущих пользователях, а также о тех, кто ответит. Посмотрите на ваш вопрос, там вообще нет технической информации. Вы пока даже не опубликовали свой фрагмент .htaccess.
- person hakre; 29.10.2012
@hakre, я уважаю ваши знания и не считаю себя в состоянии спорить или извиниться несколько раз. Если вы поняли вопрос, почему бы не отредактировать его немного и не отформатировать лучше. Я буду так учиться. Ваши комментарии не помогают.
- person Abhishek Saha; 29.10.2012
@AbhishekSaha: Я не могу опубликовать ваш
.htaccess
сниппет, потому что у меня его нет.
- person hakre; 29.10.2012
@ Брайан, я читал твою альтернативу. Думаю, есть ли у него недостатки.
- person Abhishek Saha; 29.10.2012
@hakre, я ранее задавал вопрос относительно файла htaccess, и мне помогли люди. Вот опубликованный вопрос - stackoverflow.com/questions/12210881/
- person Abhishek Saha; 29.10.2012
.htacess - это просто. Это просто отвлекает всех людей на страницу обслуживания.
- person Abhishek Saha; 29.10.2012
@Брайан. Альтернативное решение выглядит нормально. У меня есть файл заголовка, общий для всех остальных файлов. Я могу поместить свой IP-массив в файл заголовка, и он выполнит всю работу. Большой !! Итак, какой способ вы порекомендуете?
- person Abhishek Saha; 29.10.2012
Это зависит от ваших предпочтений ... PHP-способ означает, что вы можете включать / выключать сайт через сам сайт администратора, а также быстро добавлять IP-адреса (если вы сохраняете их или можете писать и анализировать какой-либо текстовый файл при проверке ips). Способ .htaccess тоже работает очень хорошо ... но требует редактирования на стороне сервера, когда вам нужно включать / отключать сайты и добавлять / удалять IP-адреса ... так что все, что будет проще всего для вашей организации / сайта!
- person Brian; 29.10.2012
RewriteCond %{REQUEST_URI} !^/admin_login$
lol - person Lawrence Cherone   schedule 29.10.2012