#76 2011-10-26 02:29

gora4o
Пользователь

Re: Как сделать редирект если в URL /shop/

В многочасовой борьбе с редиректами удалось решить проблемку.

Для тех у кого скрипт версии до 3.00 что бы корректно работал редирект.

Качаем вот этот файл  (он из версии 3.06) +  там внесены кое какие правки.
И ложим его по этому адресу(на всякий случай сделайте бекап старого файла!):
/public_html/published/SC/html/scripts/modules/abstract/_methods

После этого должен корректно работать редирект со страниц вида:

Для категорий
http://www.сайт.ru/category/589/    на    http://www.сайт.ru/category/muzukalnue-instrumentu/

http://www.сайт.ru/index.php?categoryID=589    на      http://www.сайт.ru/category/muzukalnue-instrumentu/

А также для продуктов

http://www.сайт.ru/product/3064/  на   http://www.сайт.ru/product/muzukalnuy-buben/

Вот такой редирект сделать увы не удалось:
http://www.сайт.ru/index.php?productID=3064  на http://www.сайт.ru/product/muzukalnuy-buben/

(если делаю редирект, то не работает всплывающая корзина, а только в окне магазина работает. Причина скорее всего в файле frame.js  но пока что-то не удалось его победить)

Вот теперь песня)

Отредактировано gora4o (2011-10-26 23:48)

Неактивен

 

#77 2011-10-26 23:12

Roma
Пользователь

Re: Как сделать редирект если в URL /shop/

Пере залейте файл еще куда нибудь, а то здесь отвечает файл не найден.

Неактивен

 

#78 2011-10-26 23:49

gora4o
Пользователь

Re: Как сделать редирект если в URL /shop/

Обновил ссылку

Неактивен

 

#79 2011-11-11 22:07

titans
Пользователь

Re: Как сделать редирект если в URL /shop/

Все сделал, что после слеша редиректит
А как сделать редирект если после слеша еще слеш дописать или знак вопроса

Отредактировано titans (2011-11-11 22:19)

Неактивен

 

#80 2011-11-25 13:11

www.po.kiev.ua
Пользователь

Re: Как сделать редирект если в URL /shop/

Лучше объясняйте что нужно на конкретных примерах.

Неактивен

 

#81 2011-11-25 14:19

titans
Пользователь

Re: Как сделать редирект если в URL /shop/

ссылка типа http://домен/? , http://домен// , а так же с каталога, подкаталога и товара нужно, чтобы переадресовывалось на страницу 404 или на главную.

Неактивен

 

#82 2012-01-14 18:31

www.po.kiev.ua
Пользователь

Re: Как сделать редирект если в URL /shop/

titans написал:

ссылка типа http://домен/? , http://домен// , а так же с каталога, подкаталога и товара нужно, чтобы переадресовывалось на страницу 404 или на главную.

Это реальная проблема у вас или вы пока придумываете разные гипотетические варианты?
От индексации такие URLы проще и практичнее закрывать в robots.txt, а не делать редиректы  с них.

Отредактировано www.po.kiev.ua (2012-01-14 18:33)

Неактивен

 

#83 2012-01-20 15:01

Lemetriss
Пользователь

Re: Как сделать редирект если в URL /shop/

www.po.kiev.ua написал:

RewriteCond %{HTTP_HOST} ^www\.ваш\.сайт\.домен$ [NC]   #  редирект домена с www
RewriteRule ^(.*)$ http://ваш.сайт.домен/$1 [NC,R=301,L]   #  на домен без www

прошу прощения за тупой вопрос, в строке ^www\.ваш\.сайт\.домен$ как подставлять свой адрес? Символы \. оставлять? Домен это mk.ua а что ставить вместо ваш и вместо сайт? Например сайт korova.mk.ua поставить:

RewriteCond %{HTTP_HOST} ^www.korova.mk.ua$ [NC]
RewriteRule ^(.*)$ http://korova.mk.ua/$1 [NC,R=301,L]

или

RewriteCond %{HTTP_HOST} ^www\.korova\.mk.ua$ [NC]
RewriteRule ^(.*)$ http://korova.mk.ua/$1 [NC,R=301,L]

или

RewriteCond %{HTTP_HOST} ^www\.korova\.mk\.ua$ [NC]
RewriteRule ^(.*)$ http://korova.mk.ua/$1 [NC,R=301,L]

Неактивен

 

#84 2012-01-20 15:18

www.po.kiev.ua
Пользователь

Re: Как сделать редирект если в URL /shop/

Lemetriss написал:

www.po.kiev.ua написал:

RewriteCond %{HTTP_HOST} ^www\.ваш\.сайт\.домен$ [NC]   #  редирект домена с www
RewriteRule ^(.*)$ http://ваш.сайт.домен/$1 [NC,R=301,L]   #  на домен без www

прошу прощения за тупой вопрос, в строке ^www\.ваш\.сайт\.домен$ как подставлять свой адрес? Символы \. оставлять? Домен это mk.ua а что ставить вместо ваш и вместо сайт? Например сайт korova.mk.ua поставить:
RewriteCond %{HTTP_HOST} ^www.korova.mk.ua$ [NC]
RewriteRule ^(.*)$ http://korova.mk.ua/$1 [NC,R=301,L]
или
RewriteCond %{HTTP_HOST} ^www\.korova\.mk.ua$ [NC]
RewriteRule ^(.*)$ http://korova.mk.ua/$1 [NC,R=301,L]
или
RewriteCond %{HTTP_HOST} ^www\.korova\.mk\.ua$ [NC]
RewriteRule ^(.*)$ http://korova.mk.ua/$1 [NC,R=301,L]

Вот Вам (и всем) универсальный рабочий вариант, чтобы не мучаться такими вопросами:

Код:

RewriteEngine On # если такая строка уже есть, то добавлять еще раз не нужно
Options +FollowSymLinks -Indexes # если такая строка уже есть, то, еще раз не нужно

RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [NC,R=301,L]

Отредактировано www.po.kiev.ua (2012-01-20 15:23)

Неактивен

 

#85 2012-01-26 22:12

FANTiK123
Пользователь

Re: Как сделать редирект если в URL /shop/

Не получается сделать редирект с site.ru на www.site.ru

Код:

# WebAsyst .htaccess config
AddDefaultCharset UTF-8
DirectoryIndex index.php
RewriteEngine On
#shop
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^shop/(repo_themes|js|3rdparty|images_common|products_pictures|images|themes|css)/(.*)$ published/SC/html/scripts/$1/$2?frontend=1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^shop/(imgval.php|wbs_messageserserver.php) published/SC/html/scripts/$1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^(repo_themes|js|3rdparty|images_common|products_pictures|images|themes|css)/(.*)$ published/SC/html/scripts/$1/$2?frontend=1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^(imgval.php|wbs_messageserserver.php|get_file.php) published/SC/html/scripts/$1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^shop(.*) published/SC/html/scripts/$1&frontend=1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^photos/(album|view)/(.*) photos/index.php?q=$1/$2 [L,QSA]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^photos/fullsize/(.*)/(.*) photos/getfullsize.php?filename=$1&hash=$2 [L,QSA]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^photos/(.+)$ photos/index.php?q=$1 [L,QSA]

#common
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^login/(.*) login/index.php [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^installer/(.*) installer/index.php [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^published/$ published/index.php [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteCond  %{REQUEST_URI} !^published
RewriteRule (.*) published/SC/html/scripts/index.php?__furl_path=$1&frontend=1 [QSA]

RewriteEngine On
RewriteCond %{HTTP_HOST}    !^www\.(.*)    [NC]
RewriteRule ^(.*)$ http://www.%1/$1    [R=301,L]

вот так выглядит файл htaccess, но редиректа на www не происходит, уже несколько способовпопробовал ((( подскажите что делать

Неактивен

 

#86 2012-01-27 02:49

www.po.kiev.ua
Пользователь

Re: Как сделать редирект если в URL /shop/

FANTiK123 написал:

Не получается сделать редирект с site.ru на www.site.ru

Код:

# WebAsyst .htaccess config
AddDefaultCharset UTF-8
DirectoryIndex index.php
RewriteEngine On
#shop
....
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteCond  %{REQUEST_URI} !^published
RewriteRule (.*) published/SC/html/scripts/index.php?__furl_path=$1&frontend=1 [QSA]

RewriteEngine On
RewriteCond %{HTTP_HOST}    !^www\.(.*)    [NC]
RewriteRule ^(.*)$ http://www.%1/$1    [R=301,L]

вот так выглядит файл htaccess, но редиректа на www не происходит, уже несколько способовпопробовал ((( подскажите что делать

Ну, как-бы уже писали на форуме, что эти директивы нужно момещать в верх модуля, до секции #shop
Т.е. нужно сделать так:

Код:

 # WebAsyst .htaccess config
AddDefaultCharset UTF-8
DirectoryIndex index.php
RewriteEngine On
Options +FollowSymLinks -Indexes 

RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [NC,R=301,L]

#shop
....
RewriteRule (.*) published/SC/html/scripts/index.php?__furl_path=$1&frontend=1 [QSA]

Когда будете править нужно иметь доступ по ФТП или через админ-панель хостинга к файлу .htaccess с возможностью внести изменения т.к. строка Options +FollowSymLinks -Indexes на некоторых (довольно редких) конфигурациях хостинга может вызвать "ошибку 500". Если это произойдет попробуйте заменить ее на просто Options +FollowSymLinks
Вообще Options -Indexes  не имеет отношения к вашему случаю, эта опция просто запрещает веб-серверу выдавать список каталога в котором нет индексного файла (т.е. просматривать содержимое каталога в браузере), желательна для безопасности.

Отредактировано www.po.kiev.ua (2012-01-27 02:52)

Неактивен

 

#87 2012-01-27 07:13

FANTiK123
Пользователь

Re: Как сделать редирект если в URL /shop/

www.po.kiev.ua написал:

Все равно не получается, я на верх самый тоже ставил (немного по другому просто, не получилось), по Вашему примеру тоже не получилось ((
Я как то на shop script (другой магаз.) уже такой редирект ставил, все норм получилось, тока сейчас доступа к нему нету. а вспомнить не могу, что там делал.
Доступ к своим файлам у меня есть.

Неактивен

 

#88 2012-01-27 10:40

FANTiK123
Пользователь

Re: Как сделать редирект если в URL /shop/

Сейчас у меня внутренние страницы перестали открываться ((( народ помогите что делать, файл htaccess заменил на старый, все равно не открываются.

Неактивен

 

#89 2012-01-27 15:17

FANTiK123
Пользователь

Re: Как сделать редирект если в URL /shop/

Код:

 # WebAsyst .htaccess config
AddDefaultCharset UTF-8
DirectoryIndex index.php
RewriteEngine On
Options +FollowSymLinks -Indexes 

RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [NC,R=301,L]

#shop
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^shop/(repo_themes|js|3rdparty|images_common|products_pictures|images|themes|css)/(.*)$ published/SC/html/scripts/$1/$2?frontend=1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^shop/(imgval.php|wbs_messageserserver.php) published/SC/html/scripts/$1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^(repo_themes|js|3rdparty|images_common|products_pictures|images|themes|css)/(.*)$ published/SC/html/scripts/$1/$2?frontend=1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^(imgval.php|wbs_messageserserver.php|get_file.php) published/SC/html/scripts/$1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^shop(.*) published/SC/html/scripts/$1&frontend=1 [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^photos/(album|view)/(.*) photos/index.php?q=$1/$2 [L,QSA]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^photos/fullsize/(.*)/(.*) photos/getfullsize.php?filename=$1&hash=$2 [L,QSA]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^photos/(.+)$ photos/index.php?q=$1 [L,QSA]

#common
RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^login/(.*) login/index.php [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteRule ^installer/(.*) installer/index.php [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteRule ^published/$ published/index.php [L]

RewriteCond  %{REQUEST_FILENAME} !-f
RewriteCond  %{REQUEST_FILENAME} !-d
RewriteCond  %{REQUEST_URI} !^published
RewriteRule (.*) published/SC/html/scripts/index.php?__furl_path=$1&frontend=1 [QSA]

Код вот такой на www не перекидывает. По моему все сделал как и показали
А не открывались внутренние страницы потому что в названии .htaccess упустил вначале "."  ))

Отредактировано FANTiK123 (2012-01-27 15:18)

Неактивен

 

#90 2012-01-27 15:55

www.po.kiev.ua
Пользователь

Re: Как сделать редирект если в URL /shop/

FANTiK123 написал:

Код вот такой на www не перекидывает. По моему все сделал как и показали

Тогда обратитесь в техподдержку хостинг-провайдера. Это скорее всего обусловлено конфигурацией хостинга или веб-сервером на котором все работает. Дело в том, что эта конструкция это общий стандарт.

З.Ы. Не понимаю только почему мы обсуждаем это в теме: "Как сделать редирект если в URL /shop/" если рядом прилеплена другая: "Как сделать что бы с www перекидовало на без www" Ну, надеюсь админы перенесут, если форум позволяет.

Неактивен

 

#91 2012-01-27 23:24

FANTiK123
Пользователь

Re: Как сделать редирект если в URL /shop/

www.po.kiev.ua
Вот эта комбинация сработала, спасибо за внимание и потраченное время на меня

Код:

RewriteCond %{HTTP_HOST} ^site\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

Неактивен

 

#92 2012-01-27 23:42

www.po.kiev.ua
Пользователь

Re: Как сделать редирект если в URL /shop/

FANTiK123 написал:

www.po.kiev.ua
Вот эта комбинация сработала, спасибо за внимание и потраченное время на меня

Код:

RewriteCond %{HTTP_HOST} ^site\.ru$ [NC]
RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]

Когда отвечал, думал, что ту вы уже пробовали. Т.к. про нее писали раньше.
Честно говоря - не знаю в чем у вас причина. У меня одинаково хорошо работает и та и другая.
И еще не заметил у вас в вопросе, что вам нужно с "без www" на "с www".
Те конструкции, что тут писались работают наоборот  "с www" на "без www". Может в этом причина?
Просто мы не поняли друг друга и в результате все работало, но не так, как Вам было нужно?  smile

Неактивен

 

#93 2012-02-01 15:28

FANTiK123
Пользователь

Re: Как сделать редирект если в URL /shop/

www.po.kiev.ua
Ну я в принципе понимал, конструкцию этой записи. Вначале я все эти конструкции делал, но в названии файла я забывал ставить точку. Поэтому у меня ничего не получалось.

Неактивен

 

#94 2012-02-01 15:44

Shaman2
Пользователь

Re: Как сделать редирект если в URL /shop/

непонимаю, все спорные сраницы, включая shop перечислены в начале htaccess

RewriteRule ^(home/|home|shop/|shop)(.*)$ /$2 [NC,R=301,L]
RewriteRule ^product/t10-5sfwhite/(.*) /product/t10-5sf-white/$1 [NC,R=301,L]
RewriteRule ^product/t10-9sfwhite/(.*) /product/t10-9sf-white/$1 [NC,R=301,L]

почему тогда в яндек-вебмастер до сих пор индексация shop составляет 27% ?  /shop/product/ 20%, а просто /product 42%

как заставить его выкинуть shop из индекса?

Неактивен

 

#95 2012-02-01 17:47

Ковалев Антон
Пользователь

Re: Как сделать редирект если в URL /shop/

Shaman2 написал:

непонимаю, все спорные сраницы, включая shop перечислены в начале htaccess

почему тогда в яндек-вебмастер до сих пор индексация shop составляет 27% ?  /shop/product/ 20%, а просто /product 42%

как заставить его выкинуть shop из индекса?

Ждите, пока поклеит.

Неактивен

 

#96 2012-02-02 14:00

OstiN
Пользователь

Re: Как сделать редирект если в URL /shop/

www.po.kiev.ua написал:

Код:

# for category
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)(/compare|/offset)(.*)
RewriteRule ^category/(.*)/(.+) /category/$1 [NC,R=301,L]

www.po.kiev.ua написал:

А что тут рассказывать.
Работает нормально, всякий мусор после product/(.*)/ убирает.
Отзывы и страницу для печати показывает.

подскажите, пожалуйста, как сделать так, чтобы всякий мусор убрать после /category/*/all/srvcfgrthbvvth
Спасибо.

Неактивен

 

#97 2012-02-02 15:23

www.po.kiev.ua
Пользователь

Re: Как сделать редирект если в URL /shop/

OstiN написал:

подскажите, пожалуйста, как сделать так, чтобы всякий мусор убрать после /category/*/all/srvcfgrthbvvth
Спасибо.

А какой смысл его убирать, если в роботс уже и сам /all/ желательно закрыть?
Disallow: */all/*  в robots.txt

З.Ы. Я так понимаю, название темы никто не читает? Пишем что попало, куда попал?
Создавайте темы для своих вопросов, тут отвечать не буду.

Отредактировано www.po.kiev.ua (2012-02-02 15:24)

Неактивен

 

#98 2012-02-02 15:36

OstiN
Пользователь

Re: Как сделать редирект если в URL /shop/

www.po.kiev.ua написал:

З.Ы. Я так понимаю, название темы никто не читает? Пишем что попало, куда попал?
Создавайте темы для своих вопросов, тут отвечать не буду.

О.К.
Спасибо.

з.ы зачем плодить похожие темы?

з.з.ы All/ - оставил. так мне нужно.

как бы то нибыло, спасибо за внимание.

с уважением,
ostin

www.po.kiev.ua написал:

OstiN написал:

з.ы зачем плодить похожие темы?

За тем, чтобы человек мог легко найти ответ на свой вопрос, а не перечитывал по 4 страницы чего попало на разные темы, в поисках того, что ему нужно.

З.Ы. Давайте сделаем всего 1 тему на весь форум. Тут же все про WebAsyst, зачем делить?
Вам же не сложно будет прочитать100 страниц, чтобы найти ответ на Ваш вопрос.

smile извиняюсь. учту

с уважением,
ostin

Отредактировано OstiN (2012-02-02 15:46)

Неактивен

 

#99 2012-02-02 15:40

www.po.kiev.ua
Пользователь

Re: Как сделать редирект если в URL /shop/

OstiN написал:

з.ы зачем плодить похожие темы?

За тем, чтобы человек мог легко найти ответ на свой вопрос, а не перечитывал по 4 страницы чего попало на разные темы, в поисках того, что ему нужно.

З.Ы. Давайте сделаем всего 1 тему на весь форум. Тут же все про WebAsyst, зачем делить?
Вам же не сложно будет прочитать100 страниц, чтобы найти ответ на Ваш вопрос.

Отредактировано www.po.kiev.ua (2012-02-02 15:40)

Неактивен

 

#100 2012-02-08 07:53

Rusich
Пользователь

Re: Как сделать редирект если в URL /shop/

Внесу лепту по поводу завершающего слеша в url:
Добавить завершающий слэш
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]

Удалить завершающий слэш
RewriteBase /
RewriteCond %{HTTP_HOST} (.*)
RewriteCond %{REQUEST_URI} /$ [NC]
RewriteRule ^(.*)(/)$ $1 [L,R=301] 

А то когда до топа децл не хватает и такие вещи становятся актуальны.

Неактивен

 

Board footer

Powered by PunBB