Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.02.2016, 03:16
Аспирант
Отправить личное сообщение для 2chan Посмотреть профиль Найти все сообщения от 2chan
 
Регистрация: 11.07.2014
Сообщений: 69

.htaccess и регулярные выражения или скрипт?
Прошу скромного ответа на вопрос.
Как лучше поступить: сделать регулярное выражение через htaccess или просто предоставить всю обработку запроса отдельному PHP файлу?

Огромное описание задачи - ниже. Заранее прошу прощения за излишек символов - хотел описать объём работы и примеры гибкости всей задачи.
Делаю ЧПУ для админки.
Обработчик один, проверяет много условий, аспектов тоже много.

Всё должно начинаться с "manage" или "manage/".
Т.е. изначально УРЛ таков: "site.ru/somedir/manage/".

В админке куча разделов. УРЛы специально написаны максимально логично и просто - сам любитель "вбивать от руки".

1) Просто разделы
Это просто страница с какой-то информацией, у неё нет дополнительных подразделов.
"manage/postform" - специальная форма постинга;
"manage/logout", "manage/login" - выход/вход;
и пр.

2) Управление блокировками пользователей
"manage/bans" - раздел: добавление/удаление банов, переход к конкретному по ID для конкретной информации
"manage/bans/b137" - получить информацию по бану с ID 137.
"manage/bans/b137/lift" - отпустить бан с ID 137

3) Жалобы
"manage/reports" - все жалобы;
"manage/reports/r137" - жалоба с ID 50;
"manage/reports/rip127.0.0.1" - все жалобы с этим IP;
"manage/reports/r137/crear" - пометить жалобу с ID 50 "чистой";
"manage/reports/rip127.0.0.1/crear" - пометить все жалобы, где IP отправителя - 127.0.0.1, "чистыми";
и т.д, лень всё описывать.

4) Модерация постов
Вот если раньше я ещё думал, что можно всё делать RegExp'ом, то после обдумывания структуры запросов к разделу модерации, я серьёзно засомневался.
"manage/mod/p137" - перейти к модерации поста с ID 137;
"manage/mod/p137/delete" - вместо "delete" может быть "edit", "magic" и пр. - удалить, редактировать, добавить "магии";

5) Ещё думаю как бы добавить поиск всех постов по IP и их опциональное удаление при бане и пр. прелести;

Итак. Некоторую часть вышеописанного я смог уместить в одну регулярку:
> RewriteRule ^manage/([a-z]+)?/?([prb])?([0-9]+)?/?([a-z]+)?$ manage.php?$1=1&$2id=$3&action=$4 [L]
. Работают 1й, 2й и, частично, 3й пункты.
Но что-то мне подсказывает, что расширять её дальше - некуда. Она итак максимально растянута, вместил в её всё что можно, все возможные компоненты являются опциональными и пр.

Возможно ли всё вышеописанное реализовать через простой mod_rewrite?
Если да - подскажите: как? Про условния знаю, но не могу придумать как их использовать.
Если нет - стоит ли для этого делать скрипт, обрабатывающий такой УРЛ, или есть другие методы?
Ответить с цитированием
  #2 (permalink)  
Старый 26.02.2016, 09:47
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от 2chan
Делаю ЧПУ для админки.
Пользователь или коллективный доступ к ней?
Ответить с цитированием
  #3 (permalink)  
Старый 26.02.2016, 13:41
Аспирант
Отправить личное сообщение для 2chan Посмотреть профиль Найти все сообщения от 2chan
 
Регистрация: 11.07.2014
Сообщений: 69

Сообщение от laimas Посмотреть сообщение
Пользователь или коллективный доступ к ней?
>коллективный доступ
Если имеешь в виду, что будет много разных юзеров - да. Права у них отличаются, некоторые не могут иметь доступ к тем или иным разделам.
Ответить с цитированием
  #4 (permalink)  
Старый 26.02.2016, 14:23
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Ну тогда запариться можно с таким ЧПУ. Да и вообще, ЧПУ более для поисковых роботов, а административный раздел, это закрытый раздел, раскручивать и кешировать его в гуглах нет надобности, им вообще запретить шариться по нему нужно.

Может быть, если уж делать, то администрирование/раздел/ключ в разделе/параметры, где ключ, это уже задача в разделе, а параметры просто параметры (их можно и в JSON передавать), а не размазывать для каждого да еще буковка+идентификатор - b137, r137, r137/crear, p137, p137/delete...?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Регулярные выражения vivalaakam Общие вопросы Javascript 6 08.02.2012 09:41
Помогите, пжлста, найти (или написать) скрипт для смены картинок. Artweb Работа 9 25.02.2011 11:28
Регулярные выражения в JS igsavenko Общие вопросы Javascript 2 18.05.2010 21:33
Функции поиска и замены строк или регулярные выражения? Armen Общие вопросы Javascript 1 01.01.2010 12:35
регулярные выражения php HelpeR Серверные языки и технологии 5 15.09.2009 21:09