- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Форумчане, знаю, что это уже 101, если не 1001, тема про то, как прописать правильно редирект, но всё же требуется помощь, т.к. чтение руководства не помогло...
Для начала, редирект делаю на php (хотя для общего правила это вроде не имеет значения)
Значит имеются категории и материалы, категорий всего 5, так что там без регулярных выражений просто в лоб сделал, а вот с материала так не хочу, их около 100 стр.
Итак, сейчас страница на материал имеет вид:
domen/category_name/ID-material-name , т.е. по серединке название категории, к которой относится материал, далее цифровой ИД, чёрточка и название материала, пробел заменяется именно чёрточками. Джумловские ссылки
Нужно:
domen/item/material-name , т.е. название категории заменить на универсальный слаг item, который будет всегда неизменный, ID- - убираем, оставляем только material-name
Для начала, редирект делаю на php (хотя для общего правила это вроде не имеет значения)
имеет.
Для вашего случая проще через htaccess
RewriteRule ^[^/]+\/\d+-(.*)& /item/$1 - что-то типа такого
имеет.
Для вашего случая проще через htaccess
RewriteRule ^[^/]+\/\d+-(.*)& /item/$1 - что-то типа такого
d+ - это что такое?
да можно и через htaccess, мне не принципиально
d+ - это что такое?
\d+ - это 1 или более идущих друг за другом цифр
нет, не реагирует на такое правило, ещё есть варианты?
Не уловил суть вопроса. Ну, сделали вы на php, поздравляю.
Прежде чем убирать ID, подумайте, не будет ли у вас из-за этого в будущем проблем.
Не уловил суть вопроса. Ну, сделали вы на php, поздравляю.
Прежде чем убирать ID, подумайте, не будет ли у вас из-за этого в будущем проблем.
ну прочтите ещё раз, я говорю, что не вышло у меня, так что не понятно с чем вы поздравляете...
вариант, который выше кидали для htaccess тоже ничего не дал
о каких проблемах вы вообще говорите? движок меняется, или вы это просто так написали типа теоретическое высказывание
В приведенном правиле есть неточности, к тому же это рерайт, а не редирект, т.к. не хватает соответствующего флажка.
ID не просто так придуман. Он позволяет в автоматическом режиме делать перенаправление на последнюю редакцию статьи, когда меняется ее заголовок и адрес.
В приведенном правиле есть неточности, к тому же это рерайт, а не редирект, т.к. не хватает соответствующего флажка.
ID не просто так придуман. Он позволяет в автоматическом режиме делать перенаправление на последнюю редакцию статьи, когда меняется ее заголовок и адрес.
ну так вы знаете конкретно какие неточности и можете показать правильный с вашей точки зрения вариант?
спасибо за инфу по поводу ID, но ещё раз повторяюсь, данный момент не нуждается в обсуждении, в новом движке не будет редакций, ИД в урлах вообще не используется, работает по другому короче
Только то, что бросается в глаза:
- слеш не нужно экранировать;
- амперсент заменить на доллар;
- ну, и не помешает условие "если не item..."
Только то, что бросается в глаза:
- слеш не нужно экранировать;
- амперсент заменить на доллар;
- ну, и не помешает условие "если не item..."
тьфу
RewriteRule ^[^/]+/\d+-(.*)$ /item/$1 [R=301]
попробуйте так