Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2010-02-28 01:30:04

defis
Участник
Зарегистрирован: 2010-02-28
Сообщений: 104
Рейтинг :   

как ограничить гостя от админки?

Подскажите как сделать чтобы гость заходя по адресу http://........./engine/ попадал не на admin.php а возвращался на главную.
Хотелось бы чтобы по данному линку могли ходить только авторизированые юзеры со статус номером 1 и 2, а все другие адресовались автоматом на главную, так реализовано для статус номера  4 (он автоматом попадет на главную, для статус номера 3 не проверял ) , а про гостей почему-то забыли.

Не в сети

#2 2010-02-28 02:57:20

Trashcka
Участник
Откуда КиевГрад
Зарегистрирован: 2008-12-04
Сообщений: 1,487
Рейтинг :   73 

Re: как ограничить гостя от админки?

Через htaccess, можно еще и добавить passwd.

Не в сети

#3 2010-02-28 03:04:20

defis
Участник
Зарегистрирован: 2010-02-28
Сообщений: 104
Рейтинг :   

Re: как ограничить гостя от админки?

Trashcka пишет:

Через htaccess, можно еще и добавить passwd.

Не подходит, нужно доделать код, как это реализовано с статус номером 3 например, только для гостя.

Не в сети

#4 2010-02-28 15:14:27

duncan
Участник
Зарегистрирован: 2008-10-23
Сообщений: 37
Рейтинг :   

Re: как ограничить гостя от админки?

defis пишет:

Подскажите как сделать чтобы гость заходя по адресу http://........./engine/ попадал не на admin.php а возвращался на главную.
Хотелось бы чтобы по данному линку могли ходить только авторизированые юзеры со статус номером 1 и 2, а все другие адресовались автоматом на главную, так реализовано для статус номера  4 (он автоматом попадет на главную, для статус номера 3 не проверял ) , а про гостей почему-то забыли.

если вы опасаетесь индексации ботами -- то достаточно ограничить доступ через роботс-тхт, в ином случае не особо важный функционал -- юзер быстро зарегистрируется и получит доступ к данной странице.


не помогай людям и не нарвёшься на хамство

Не в сети

#5 2010-02-28 23:07:27

defis
Участник
Зарегистрирован: 2010-02-28
Сообщений: 104
Рейтинг :   

Re: как ограничить гостя от админки?

duncan пишет:
defis пишет:

Подскажите как сделать чтобы гость заходя по адресу http://........./engine/ попадал не на admin.php а возвращался на главную.
Хотелось бы чтобы по данному линку могли ходить только авторизированые юзеры со статус номером 1 и 2, а все другие адресовались автоматом на главную, так реализовано для статус номера  4 (он автоматом попадет на главную, для статус номера 3 не проверял ) , а про гостей почему-то забыли.

если вы опасаетесь индексации ботами -- то достаточно ограничить доступ через роботс-тхт, в ином случае не особо важный функционал -- юзер быстро зарегистрируется и получит доступ к данной странице.

вот как раз таки нет, новые юзеры у меня при регистрации имеют статус 4, и если они пробуют перейти в категорию содержащую /engine/ их перенаправляют на главную, почему же с гостями так не сделали? Ведь было бы верно.
Подскажите тогда хотя-бы как гостю присвоить статус номер, а дальше сам попробую наковырять

Не в сети

#6 2010-03-01 00:43:44

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: как ограничить гостя от админки?

defis, открываешь файл admin.php и с 46-й строки до 70-й заменяешь следующим кодом:

/*
//
// Show LOGIN screen if user is not logged in
//
if (!is_array($userROW)) {
	$tvars['vars'] = array(
		'php_self'		=>	$PHP_SELF,
		'redirect'		=>	$REQUEST_URI,
		'home_title'	=>	home_title,
		'error'			=>	($SYSTEM_FLAGS['auth_fail'])?$lang['msge_login']:'',
	);
	$tvars['regx']['#\[error\](.+?)\[/error\]#is'] = ($SYSTEM_FLAGS['auth_fail'])?'$1':'';

	$tpl -> template('login', tpl_actions);
	$tpl -> vars('login', $tvars);
	echo $tpl -> show('login');
	exit;
}
*/

// Not all of users are welcome here
if (!is_array($userROW) || $userROW['status'] > 3) {
	@header("Location: ".home);
	exit;
}

И будет тебе щастя wink


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#7 2010-03-01 02:09:04

defis
Участник
Зарегистрирован: 2010-02-28
Сообщений: 104
Рейтинг :   

Re: как ограничить гостя от админки?

счастья нет, ничего не изменилось, все равно, когда неавторизированный перехожу в engine попадаю в admin.php

Не в сети

#8 2010-03-01 06:18:59

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: как ограничить гостя от админки?

defis, прикрепи свой admin.php, возможно у тебя более старая версия файла чем у меня, я посмотрю. У меня после такого хака незарегистрированных пользователей со страницы http://mysite/engine/ кидает на главную.


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#9 2010-03-01 08:52:54

CyberMama
Участник
Откуда Иркутск
Зарегистрирован: 2009-11-24
Сообщений: 139
Рейтинг :   17 
Сайт

Re: как ограничить гостя от админки?

а почему бы просто не переименовать папку engine - вроде как настройки админки это позволяют

Не в сети

#10 2010-03-01 09:23:28

Neo
Участник
Откуда SPB, Russia
Зарегистрирован: 2010-01-04
Сообщений: 463
Рейтинг :   

Re: как ограничить гостя от админки?

Кстати, при переименовании ошибки вылазят (сообщается что-то типа "невозможно обнаружить gzip функцию") и служебная страница плагинов теряет свои установки css.
Скажите, как правильно переименовать engine (уж и переименовывал просто в установках и вместе с физической директориеи engine, все равно пришлось вернуть все обратно?

Не в сети

#11 2010-03-01 17:07:39

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: как ограничить гостя от админки?

проще в login.tpl прописать редирект.

Не в сети

#12 2010-03-01 20:11:11

defis
Участник
Зарегистрирован: 2010-02-28
Сообщений: 104
Рейтинг :   

Re: как ограничить гостя от админки?

Amarelius пишет:

defis, прикрепи свой admin.php, возможно у тебя более старая версия файла чем у меня, я посмотрю. У меня после такого хака незарегистрированных пользователей со страницы http://mysite/engine/ кидает на главную.

Вот прикрепил

Изменено defis (2010-03-01 20:12:30)

Не в сети

#13 2010-03-01 21:39:43

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: как ограничить гостя от админки?

Проблема у тебя в том, что не срабатывает магическая строчка @header("Location: ".home);, а не срабатывает она у тебя потому что вывод заголовков должен производится до любого другого вывода. В твоем же случаи в файле admin.php перед <?php (в начале файла) стояло несколько ENTER'ов которые и выводились до вывода в заголовки. И вообще, если производил где какие изменения, проверь чтобы в начале файлов *.php перед <?php не было ни одного лишнего символа, а в конце файла символы ?> лучше вообще не указывать.

Ниже отредактированный файл, у меня работает (проверял smile)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#14 2010-03-02 02:38:59

defis
Участник
Зарегистрирован: 2010-02-28
Сообщений: 104
Рейтинг :   

Re: как ограничить гостя от админки?

Amarelius пишет:

Проблема у тебя в том, что не срабатывает магическая строчка @header("Location: ".home);, а не срабатывает она у тебя потому что вывод заголовков должен производится до любого другого вывода. В твоем же случаи в файле admin.php перед <?php (в начале файла) стояло несколько ENTER'ов которые и выводились до вывода в заголовки. И вообще, если производил где какие изменения, проверь чтобы в начале файлов *.php перед <?php не было ни одного лишнего символа, а в конце файла символы ?> лучше вообще не указывать.

Ниже отредактированный файл, у меня работает (проверял smile)

Спасибо большое, все работает

Не в сети

Подвал раздела

Работает на FluxBB