Есть ли простой способ закрыть ненужные страницы ошибкой 404? [РЕШЕНО]

Здравствуйте!

Столкнулся с задачей: для моего проекта много стандартных страниц из ls не нужны и, чтобы не ковыряться в движке, удаляя эти экшены (что совсем ни к чему, мало ли...) я решил закрыть ненужные страницы 404 ошибкой, но вот вопрос — как это сделать?
Например, чтобы закрыть site.ru/blogs (и еще /rss, /stream, /feed и т.д.)? Подскажите, пожалуйста.

Спасибо за ответ.

UPD: Прописал в главном хуке соответствующие условия

9 комментариев

avatar
Вариант №1 — убрать все ссылки на эти страницы с сайта.
Вариант №2 — настроить htaccess так. чтобы пользователь возвращался куда-нибудь при попытке открыия этой страницы.
Вариант №3 — скомбинировать оба вышеописанных варианта.
avatar
первый вариант — само собой
2-й — про .htaccess сразу не подумал, спасибо)
avatar
Лучше на уровне nginx. описать нужный лока и в нём deny all; access_log off; log_not_found off;
avatar
да, спасибо, это разумнее, чем .htaccess править. Но пока я остановился на правке HookMain.class.php
avatar
А что вы там написали можно подробнее?
avatar
/**
         * Возвращаем вместо ненужных страниц 404 ошибку
         */
		  if(Router::GetAction() == 'stream' || Router::GetAction() == 'blogs' || Router::GetAction() == 'rss' || 
		     Router::GetAction() == 'feed' || (Router::GetAction() == 'index' &&  Router::GetActionEvent() == 'top') || 
			  (Router::GetAction() == 'index' &&  Router::GetActionEvent() == 'newall') || 
			     (Router::GetAction() == 'index' &&  Router::GetActionEvent() == 'discussed') || 
				   (Router::GetAction() == 'people' &&  Router::GetActionEvent() == 'online') || 
				     (Router::GetAction() == 'people' &&  Router::GetActionEvent() == 'new')  
					   
		    )
		  {
            Router::Action('error','404');
          }
avatar
Спасибо большое. А то я раньше без знания в PHP другие файлы движка правил.
avatar
Идеально было бы положить массив закрытых урлов в конфиг и элегантно перебирать его, чем говорить в IFе шестнадцатиэтажку.

А сама идея очень даже толковая.
avatar
А где вы нашли 404? Может имеется ввиду ошибка доступа?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.