Помогите вырезать часть url с помощью htaccess

M1
На сайте с 07.11.2012
Offline
5
23968

Здравствуйте, есть текущий адрес

site.ru/category/art1/zapis/

как с помощью штакес сделать такое

По запросу site.ru/category/art1/zapis/

получаем в строке адреса site.ru/zapis/

То есть вырезается /category/art1

Но после вырезания строки показывается содержимое site.ru/category/art1/zapis/

Сейчас код такой в htaccess

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_URI} ^/category/art1/(.*)$ [NC]

RewriteRule ^category/art1/(.*)$ http://site.ru/$1 [L,R=301]

Редирект происходит, то есть строка обрезается до site.ru/zapis/

но сервер отдает такой страницы не существует.

а нужно показывать содержимое страницы site.ru/category/art1/zapis/

cms bitrix если имеет значение

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#1

RewriteRule ^zapis/$ /category/art1/zapis/ [L]

И сам ты штакес:)

Подпись))
M1
На сайте с 07.11.2012
Offline
5
#2
Милованов Ю.С:
RewriteRule ^zapis/$ /category/art1/zapis/ [L]
И сам ты штакес:)

К сожалению вы не поняли, о какой помощи я просил. То что вы привели код совсем не то :(

Задача, есть страница вида

site.ru/category/art1/zapis/

При заходе на эту страницу должен происходить обрезание части url, когда страница загрузилась у нее адрес должен быть site.ru/zapis/

а само содержимое от страницы site.ru/category/art1/zapis/

При заходе site.ru/zapis/ должно отображаться содержимое site.ru/category/art1/zapis/

Если спросить коротко, тот как сменить адрес странички (url) с помощью .htaccess

---------- Добавлено 06.04.2013 в 12:33 ----------

по адресу site.ru/zapis/ страницы не существеует, то есть нужен не редирект в прямом смысле а именно отображать страницу по другому адресу, вообще такое возможно?

Я_Рожден_В_СССР
На сайте с 21.08.2010
Offline
75
#3
Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#4

К сожалению, не поняли Вы.

Чтобы изменить УРЛ при помощи штакеса надо делать редирект(301|302).


RewriteRule ^category/art1/zapis/$ http://%{HTTP_HOST}/zapis/ [R=301,L]
RewriteRule ^zapis/$ /category/art1/zapis/ [L]

1 строка делает 301 редирект с www.site.ru/category/art1/zapis/ на www.site.ru/zapis/

2 строка говорит серверу, что если урл вида www.site.ru/zapis/ то надо показывать то, что находится по адресу www.site.ru/category/art1/zapis/

В итоге, если зайти на www.site.ru/category/art1/zapis/, то нас сначала редиректнит на www.site.ru/zapis/, а потом покажется то, что находится по адресу www.site.ru/category/art1/zapis/

Это лишь принцип, но никак не догма. Возможно будет конфликт с уже существующими RULЯ'ми|ЧПУ

M1
На сайте с 07.11.2012
Offline
5
#5

Спасибо за помощь и разъяснения.

Теперь выдает ошибку циклических переадресации

Пробую сам разобраться, подумать но не выходит.

//Возможно будет конфликт с уже существующими RULЯ'ми|ЧПУ

htaccess сейчас только содержит строчки потек. проблеме, в по самому движку хз.

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#6

RewriteCond %{ENV:REDIRECT_STATUS} ^$

RewriteRule ^category/art1/zapis/$ http://%{HTTP_HOST}/zapis/ [R=301,L]

RewriteRule ^zapis/$ /category/art1/zapis/ [L]

Так попробуйте:)

M1
На сайте с 07.11.2012
Offline
5
#7

Спасибо.

Заработало.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий