Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Закрыть сайт, с возможностью просмотра администратором

16.04.2011, 13:07
Руслан

Зарегистрирован:
2011-04-15
Сообщений: 3

Как это реализовать? А то сейчас, если закрываешь сайт , то даже админ не может посмотреть...
17.04.2011, 06:51
Asiat
Аниматика
Asiat

Зарегистрирован:
2005-12-12
Сообщений: 576

Не совсем понял, что конкретно подразумевается под "закрытие сайта", но разница между админами и обычными юзерами обычно в принадлежности к группам, либо (если админ один) по конкретному ID.

Как вариант, можете прямо в макете в самом начале воткнуть какой-нибудь редирект по условию типа:

";
if ($AUTH_USER_GROUP != 1 && $SITE_IS_CLOSED) {
header("Location: /we-are-closed/",true,307);
}
echo "<html ...

Только если эта страница неткатовская и использует тот же макет, то учтите это в условии.

Разработка сайтов на Netcat с 2006... хм-м ... или 2005 хммм года. В общем, обращайтесь.
17.04.2011, 15:14
Руслан

Зарегистрирован:
2011-04-15
Сообщений: 3

Уже правда неактуально, пришлось не закрывать, но суть в том, пока сайт создается, чтобы его не могли посещать простые пользователи (т.е. им выходила страница что сайт закрыт), а админ мог бы просматривать сайт, как будто бы он открыт полностью.
17.04.2011, 15:35
Гость
Гость

Для статичного Вашего IP-адреса или узкого диапазона Ваших динамических адресов можно открыть, для всех остальных закрыть доступ.
В идеале на такой случай иметь нужно под рукой статичный адрес от Вашего интернет-провайдера.
Например можно так изменить код от Asiatа
";
if ($_SERVER['REMOTE_ADDR'] != 'здесь.ваш.ip.адрес') {
header("Location: /we-are-closed/",true,307);
}
echo "<html ...
17.04.2011, 15:39
Гость
Гость

и еще
Цитата:
Если клиент использует прокси-сервер узнать его IP-адрес можно при помощи переменной окружения HTTP_X_FORWARDED_FOR, значение которой можно получить при помощи функции getenv().
17.04.2011, 23:08
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

1. Ограничение доступа по попределенным IP надо настраивать в .htaccess, типа
Код:
order deny,allow
allow from aaa.bbb.ccc.ddd

2. Не все прокси передают HTTP_X_FORWARDED_FOR, надеятся на это не стоит.
3. вообще для закрытия доступа можно просто закрыть сайт через http-авторизацию. Либо через тот же .htaccess либо через пхп (в случае, если пхп подключен как модуль, а не cgi):
Код:

define('usr','demo');
define('pwd','demo');

function authenticate() {
header('WWW-Authenticate: Basic realm="Secure Zone"');
header('HTTP/1.0 401 Unauthorized');
die("Вы должны ввести корректный логин и пароль для получения доступа к ресурсу\n");
}

if (!($_SERVER['PHP_AUTH_USER']==usr && $_SERVER['PHP_AUTH_PW']==pwd)) authenticate();


Temet nosce...
18.04.2011, 11:38
Руслан

Зарегистрирован:
2011-04-15
Сообщений: 3

О, спасибо. Про закрытие доступа через ip я то забыл!
28.04.2011, 11:49
Гость
Гость

Kudos to you! I hadn't thoguht of that!
198 196 2011-04-28 11:49:31 11196
Описание проекта