День добрый. Возникла необходимость сделать следующуу:
Есть сайт, необходимо запретить доступ ко всем страницам, в урле которых нет слеша (кроме первого после домена), например, site.ru/data - сюда запретить, site.ru/data/1.php - сюда разрешить.
Как это можно сделать? Подозреваю, что при помощи конструкции
PHP код:Однако в регулярных выражениях я не силен, поэтому прошу помощи. Спасибо
<Files ~ "регулярное выражение"> Deny from all</Files>
---------- Сообщение добавлено 14:31 ---------- Предыдущее 14:18 ----------
Либо, как вариант, сделать редирект на 404 страницу тех страниц, в адресе которых нет слеша.
- 28.11.2012 17:31
- 29.11.2012 16:57
Решил проблему с помощью PHP
PHP код:Имеются ли в таком решении явные недостатки или уязвимости?$uri = preg_replace ('/([a-zA-Z0-9]|-|_|\.)+/', '', $_SERVER['REQUEST_URI']);
if ( strlen($uri) < 2 && strlen($_SERVER['REQUEST_URI']) > 1 ) {
$code = header('Location: http://' . $_SERVER['HTTP_HOST']);
$code .= header('HTTP/1.1 301 Moved Permanently');
exit();
} else {
***основной код index.php***
}
Тэги топика:
Похожие темы
Темы | Раздел | Ответов | Последний пост |
---|---|---|---|
Запрет к индексации определенной рубрики в WordPress | WordPress | 7 | 11.08.2012 23:46 |
Запрет на копирование текста + не оторбажения в исходном коде. Как это сделать? | Web программирование | 16 | 08.02.2012 22:53 |
Facebook - запрет на приглашения в группу | Социальные сети | 6 | 21.12.2011 17:28 |
Facebook - запрет на приглашения в группу | Оффтоп и свободные темы | 0 | 21.12.2011 15:49 |
Запрет title у миниатюр | Web программирование | 10 | 21.05.2011 23:51 |