|
|
29.02.2012, 20:49
|
|
viros
Правдин Виталий
Зарегистрирован: 2008-12-03
Сообщений: 126
|
Всем привет.
Кто-нибудь заморачивался по поводу ЧПУ!? Задача в следующем, в интернет магазине избавиться от повторяющегося во всех ссылках слова /netshop/. Поискал по форуму, по сайту, погуглил, но ничего похожего не нашел. А требуют сократить вложенность из такого вида http://mysite.ru/netshop/section/product/product_123.html, хотя бы до такого вида http://mysite.ru/section/product/product_123.html.
Пробовал написать в .htaccess, RewriteRule, но никак не могу сообразить, как правильно составить такое правило, которое убирало бы из адреса слово netshop.
Подскажите, если кто с таким сталкивался...
|
|
|
29.02.2012, 22:39
|
|
DiGGy
DiGGy

Зарегистрирован: 2005-04-04
Сообщений: 1546
|
А что мешает перетащить раздел section на уровень выше?
Temet nosce...
|
|
|
29.02.2012, 23:24
|
|
viros
Правдин Виталий
Зарегистрирован: 2008-12-03
Сообщений: 126
|
Вопрос лишь в том,(может я конечно не до конца правильно все понимаю).., в разделе netshop множество разделов с подразделами, в которые заливаются данные из 1С. Если я вытащу все эти разделы выше netshop с загрузкой данных ничего не произойдет!?
|
|
|
29.02.2012, 23:37
|
|
DiGGy
DiGGy

Зарегистрирован: 2005-04-04
Сообщений: 1546
|
чего не скажу того не скажу, интеграцию с 1С я сам всегда делаю и штатным модулем не пользуюсь.
думаю, если на исходник посмотреть, то понятно будет, а если не понятно, то лучше в саппорте уточнить.
Temet nosce...
|
|
|
01.03.2012, 00:05
|
|
viros
Правдин Виталий
Зарегистрирован: 2008-12-03
Сообщений: 126
|
По исходникам смотрел, приходилось немного и править чтобы выгрузка делалась так как нужно. Отчего и пришел к выводу что от этого раздела не уйти...Просто видел много обсуждений по поводу ЧПУ, редиректу и сокращению вложенности в урле, но в итоге для себя ничего не нашел.
А Поддержка в принципе молчит...писал письма, тихо, больше недели прошло!
|
|
|
01.03.2012, 12:39
|
|
Asiat
Аниматика

Зарегистрирован: 2005-12-12
Сообщений: 576
|
С RewriteRule, возможно, проблема в том, что netshop нужно не убрать, а добавить...
Надо знать, к чему привязаться, т.е. по какому признаку определить, что данный адрес подлежит преобразованию.
Допустим, если известно, что все (и только такие) нужные страницы имеют в своем адресе "product_", а папок два уровня то можно пробовать добавить че-нить такое:
RewriteRule ^(.+)/(.+)/product_([0-9]+).html$ /netshop/$1/$2/product_$3.html [L]
(это навскидку, не тестил)
Вставлять между RewriteEngine On и неткатовским правилом
|
|
|
01.03.2012, 14:48
|
|
Asiat
Аниматика

Зарегистрирован: 2005-12-12
Сообщений: 576
|
Нет, вот такое:
RewriteRule ^(.+)/(.+)/product_([0-9]+)\.html$ /netcat/require/e404.php?REQUEST_URI=netshop/$1/$2/product_$3.html [L,QSA]
|
|
|
01.03.2012, 15:08
|
|
viros
Правдин Виталий
Зарегистрирован: 2008-12-03
Сообщений: 126
|
Цитата:RewriteRule ^(.+)/(.+)/product_([0-9]+).html$ /netshop/$1/$2/product_$3.html [L]
Это стоит попробовать. Основное то, что все разделы с конечными страницами product_123.html находятся исключительно в разделе netshop, но название этих страниц разное, в соответствии для каждого с корневым каталогом. т.е. к примеру (mysite.ru/netshop/akkumulyatory/akkumulyatory_435.html
mysite.ru/netshop/kolesa/kolesa_732.html )
В таком случае если не подобрать универсальное правило, как вариант получается можно попробовать написать для каждого раздела свое!?
что-то вроде: Код:RewriteRule ^(.+)/(.+)/product_([0-9]+).html$ /netshop/$1/$2/akkumulyatory_$3.html [L]
RewriteRule ^(.+)/(.+)/product_([0-9]+).html$ /netshop/$1/$2/kolesa_$3.html [L]
з.ы.правда попробовал так написать, пока уткнулся в 500-ую ошибку...
|
|
|
02.03.2012, 08:23
|
|
viros
Правдин Виталий
Зарегистрирован: 2008-12-03
Сообщений: 126
|
Цитата:Нет, вот такое:
RewriteRule ^(.+)/(.+)/product_([0-9]+).html$ /netcat/require/e404.php?REQUEST_URI=netshop/$1/$2/product_$3.html [L,QSA]
Спасибо за ответ. Попробовал так написать, добавлял правило в ifModule mod_rewrite.c после RewriteEngine On, т.е. перед неткатовскими настройками, на сайте ничего не изменилось. Написал тоже в конце файла, после стандартных настроек, сайт работает, но изменений никаких нет, как будто ничего и не менял....(
Также есть разделы с большим вложением, до трех разделов. Для них попробовал по аналогии написать
Код:RewriteRule ^(.+)/(.+)/(.+)/product_([0-9]+).html$ /netcat/require/e404.php?REQUEST_URI=netshop/$1/$2/$3/product_$4.html [L,QSA]
но результат такой же, ничего не происходит.
Цель не просто убрать netshop из URL, потому что не нравится. Это необходимо для правильной индексации поисковиками. ведь такие глубокие вложения они могут просто пропустить...
|
|
|
02.03.2012, 15:26
|
|
Asiat
Аниматика

Зарегистрирован: 2005-12-12
Сообщений: 576
|
Второй пример был рабочий, проверенный.
Не ручаюсь, конечно, за любой сервер, мало ли где че вылезет.
Да, можно несколько правил для разных разделов.
Насчет правильной индексации, ИМХО это кто-то опять перестраховывается и других пугает. Если есть подозрения на плохую индексацию, проще решить проблему с помощью карт сайта, сайтмапов, самих блоков навигации... да и есть ли вообще она?
Потому как после того, как вам удастся настроить эти правила, вылезут какие-нить сопутствующие проблемы с другими ссылками (постраничная навигация, еще че-нить..)
|
|
|
02.03.2012, 20:56
|
|
viros
Правдин Виталий
Зарегистрирован: 2008-12-03
Сообщений: 126
|
Цитата:Насчет правильной индексации, ИМХО это кто-то опять перестраховывается и других пугает. Если есть подозрения на плохую индексацию, проще решить проблему с помощью карт сайта, сайтмапов, самих блоков навигации... да и есть ли вообще она?
Потому как после того, как вам удастся настроить эти правила, вылезут какие-нить сопутствующие проблемы с другими ссылками (постраничная навигация, еще че-нить..)
Согласен, sitemap сделал и тоже думал будет достаточно, при том что и текста и все остальное сделано в соответствии с требованиями SEO. Но вот есть у заказчика такая водобоязнь "Лучше наверняка". А насчет именно раздела netshop в URL-е уже не первый раз говорят....с желанием убрать его из адреса.
В любом случае спасибо за ответ, а то сомнения мучали. Будем пробовать.)
|