По сути, я пытаюсь работать с внешним интерфейсом веб-сайта, но я бы хотел, чтобы все остальные, кроме меня, были перенаправлены на страницу создания, если хотите. В настоящее время у меня есть:
redirect 301 /index.php http://www.domain.com/construction.php
Хотя это работает, все работает хорошо, я хотел бы иметь возможность сам видеть действующий сайт, можно ли исключить всех, кроме моего IP?
Еще раз спасибо.
Вы можете сделать это с помощью mod_rewrite
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !=123.45.67.89
RewriteRule index.php$ /construction.php [R=301,L]
Привет, вы можете сделать следующее в файле .htaccess
RewriteEngine on
# Redirect all except allowed IP
RewriteCond %{REMOTE_ADDR} !^12.345\.678\.901$
RewriteRule /index.php http://www.domain.com/construction.php [R=302,L]
, указав свой IP вместо 12.345.678.901
Следующее работало для меня
Deny from all
Allow from xxx.xxx.xx.xxx
Если ваша версия Apache 2.4 *, вы можете перенаправить посетителей на страницу конструктора, используя следующие директивы в htaccess:
<If "%{REMOTE_ADDR} !='yourIp'">
RedirectMatch ^/((?!construction.php).*)$ /construction.php
</If>
В нем говорится, что адрес ip не yourIp перенаправить все запросы в /construction.php .
В более старых версиях apache вы можете использовать следующее решение на основе перезаписи мод:
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^myIP$
RewriteRule !construction\.php /construction.php [L]
Это внутренне для слов запрос к /construction.php, если встречается RewriteCondition. Вы можете заменить L на R, если хотите видеть перенаправленный URL в адресной строке браузера.
Если у вас есть диапазон IP-адресов, которые вы хотите исключить из просмотра страницы «в разработке», вы можете использовать |
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^127.0.0.1|212.250.141.228
RewriteRule ! construction\.html /construction.html [R]
. .htaccess
файл, особенно если он содержит больше правил переписывания.