Как да направя redirect 301 на всички стари линкове в .htaccess

seven

New Member
Здравейте,

Наскоро направих редизайн на моя сайт и всички страници са сега с променени линкове, което ми създава сериозни проблеми. Някой знае ли каква команда/формула трябва да напиша в .htaccess файла, за да може всички стари линкове да редиректват с 301 към home page?

Благодаря предварително.
 

Poltargaista

Active Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

RewriteEngine On
ErrorDocument 404 http://www.домейна-ти.com/custom-error-page.html
и си правиш custom-error-page.html
Може да има и други начини!

Мисля, че друго имаше предвид колегата. ;-)

Здравейте,
Наскоро направих редизайн на моя сайт и всички страници са сега с променени линкове, което ми създава сериозни проблеми. Някой знае ли каква команда/формула трябва да напиша в .htaccess файла, за да може всички стари линкове да редиректват с 301 към home page?
Благодаря предварително.

Ако не са много файлове, защо не ползваш този инструмент (http://www.rapidtables.com/web/tools/redirect-generator.htm) и да си генерираш какъвто код ти трябва за htaccess-а? Поставяш старото URL и URL-то на Home Page-а и си готов. Ако си имат някаква последователност можеш само с 1 ред да го направиш:
Redirect 301 /strukturata/na-starite-adresi/ http://homepage.net/

Между другото, смятам, че този инструмент също ще е полезен на доста начинаещи за генериране на .htaccess файлове: http://www.htaccessredirect.net/
 

seven

New Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Ако не са много файлове, защо не ползваш този инструмент (http://www.rapidtables.com/web/tools/redirect-generator.htm) и да си генерираш какъвто код ти трябва за htaccess-а? Поставяш старото URL и URL-то на Home Page-а и си готов. Ако си имат някаква последователност можеш само с 1 ред да го направиш:
Redirect 301 /strukturata/na-starite-adresi/ http://homepage.net/

Между другото, смятам, че този инструмент също ще е полезен на доста начинаещи за генериране на .htaccess файлове: http://www.htaccessredirect.net/

Това е много полезна информация но на мен няма да ми свърши работа, понеже линковете за редирект са 120 000. Така че ми трябва формула която да зададе на всички стари линкове наведнъж, да водят към home page а не към липсващи страници.
 

Poltargaista

Active Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Пропуснал си една част от мнението ми:
Ако си имат някаква определена структура (директории, категории...) можеш само с няколко реда да го направиш: Redirect 301 /strukturata/na-starite-adresi/ http://homepage.net/
 

AMitrev

Well-Known Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Защо към homepage?
Какъв е смисъла на това упрежнение след като страниците си ги имаш?

Вариант 1 htaccess:
Примерно
Код:
RewriteCond %{QUERY_STRING} ^page=p&site=([0-9]+)$
RewriteRule ^/?$          site/view/%1? [R=301,L]

Вариант 2 скрипт:
Примерно ако линковете са към myfile.php?params да създадеш този myfile И вътре в него да правиш с header редирект.

Формула няма как никой да ти даде, защото само ти си знаеш сайта.
 

seven

New Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Оправих се, благодаря.
 

kirilbug

Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Кажи поне как си го направил, за да може друг като търси нещо по темата да открие това, което търси. Т.е. реално използваното решение!
 

seven

New Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Използвах следното:

RewriteRule ^oldcategory/link http://www.sitename.com/newlink/index.html [R=301,L] Като за oldlink може да се зададе началния код на категорията и всички включени стари линкове ще редиректват към новия задеден линк.

Това общо взето ми свърши повечето работа. Редиректнах няколко стари категории с хиляди линкове към новите категории и сега всичко е ОК с тях. Има обаче и други 2-3000 линкове със всевъзможни теми в тях, които не мога да хвана под общ знаменател. Искам и тях с една формула да ги пратя всичките да редиректват към home page.

Намерих следния код в нета за тази работа:

RewriteEngine on
RewriteRule ^(.*)$ http://sitename.com/$1 [R=301,L]

Въпросът ми е, ще успея ли с това да редиректна всички останали линкове наведнъж и по важното, ще важат ли формулите които вече съм въвел, редиректващи старите категории към новите алтернативи?
 

zoomaniak

Well-Known Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Редиректването е нож с две остриета. Много тънък инструмент - не го препоръчвам в обобщаващ план в следната фраза:

- Имам едни 10 000 линка и сега искам всичките да ги редиректна към индекса на новият сайт.

Трябва да прочетете какво става в "съзнанието" на всички търсачки, когато почнат да ви преиндексират.

Аз имах такива проблеми с около 7 000 линка и нарочно предизвиках счупването им с един WP SEO плъгин - не можах да избегна този процес, защото в началото на създаването на Първи Български Зоопортал нямах сегашните знания и в момента имам счупени в мрежата около 20 000 линка - те просто несъществуват на сегашният сървър.

И аз мислех за редирект - и като гледах репортите в wm-tulsa направо получих инфаркт.... импресиите паднаха. Заявките пазнаха. Кликаемостта падна. Посещаемостта падна... но аз знаех, че съм на прав път.

Отворих тема тук в този форум ................. и ме посъветваха да постъпя по-умно. Написах команда - съобщение, към всички Търсачки, че дадените файлове в дадената директория от старият сайт вече не са съществуващи файлове на сегашният сървър и искам да ги игнорират в индексирането и да ги премахнат от всичко. И минаха месеци на чакане и стана чудото и още се лекува всичко - но грешките намаляват пропорционално и новите реиндексирани линкове мачкат ключовите си думи...............

Командата е:

# END WordPress
Redirect 410 /content
и изреждате директории в които има старо съдържание и търпеливо чакате просто да се рефрешнат съръврите на Търсачките...............

Уникалният плъгин е Yoast WordPress SEO има тонове безплатна споделена информация от хора в интернет приятели.................. вижте в линка http://goo.gl/9G1Cv - аз така открих моето "спасение".
 

zoomaniak

Well-Known Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

А аз лично не одобрявам 404 редирект................. защото то не пречи на СЕО оптимизацията НО отблъсква крайните потребители - клиенти - трафик и т н....

Като следя логовете за хора достъпили при мен 404 страница виждам как просто не са се застояли повече от 3 секунди - колкото и красиви да ги правя и обяснителни - народа ни е тъп и не разбира какво е това 404 - не намира каквото е търсел и си вдига гълъбите от сайта..............
 

zoomaniak

Well-Known Member
От: От: Как да направя redirect 301 на всички стари линкове в .htaccess

Особенно за Онлайн магазините - 404 е като "птичи грип" мутира и убива трафика довел клиента при мен...................... ТЪПО но факт.
 

r.stefanov

New Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Стамене, пазиш ли някакви статистики за твърденията си? Питам, защото моите наблюдения са много различни и redirect с 301 никога не е имало последици. Тук говоря обаче за 301 на стара връзка към новата.

Иначе по темата 301 към home не е особено добра идея. Ако връзките нямат кой знае каква стойност, по-добре да се оставят да умрат с 404 и custom page, който да ориентира посетителите. Най-добрият вариянт е 301 директно към новият адрес. Играчка е, да. :confused:
 

zoomaniak

Well-Known Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Добро утро.

Редиректването е пипкава работа... защото никой не взима в предвид, че трябва да се редиректват Живи линкове, които стоят някъде във форуми и са били носител на голям трафик. Примерно аз имам 4 линка в бг-мама :) тях задължително бих ги редиректнал към новите и абсолютно същи места в сайта - ако ми се наложи де.

Трябва да се видят въобще колко линка сочат към сайта.............. иначе другите линкове, които са индексирани от търсачките май не са проблем - тях никой не ги ползва. Тях търсачката ще ги махне от индекса до 30 дни след като ги засече...

Обикновенно редиректват категория / старият линк към новото място / - ама пак ако си струва де.

Така, че ползвайте инструменти и направете Таблица, която да подредите важни линкове сочещи към вас от чужди сайтове/форуми и Социални мрежи.....

Стамене, пазиш ли някакви статистики за твърденията си?

От УЕ-Тулса мога да извадя статистика - от Логовете на сървър/сайт също ... в един от сайтовете ни, на който не съм собственик - но го управлявам бях поискал да изтрият всички линкове, които водят към 404 - но не одобриха идеята ми. Сега 404 е най-посещаваното място по Трафик!!!! Много непрофесионално - а сайта е къстъм и създателите на сайта, дори не знаеха, че като изключиш продукт от магазина - той не се вижда за потребителите на магазина - ДА така е - но линка е жив ако седи в някой форум и продукта въпреки, че е изключен може да се достъпва през линка.

Докато разбера това мина един месец и се чудех КАК поръчват изключени продукти.

Правилното правило за такива линкове е - да редиректва към категорията в която е бил продукта. Ама честно да ви кажа никой не ми вярва, че за всичко в интернет и сайтовете в него си има спуснати правила - написани и описани.

Изчезвам на работа ..... насъбрали са се яко поръчки през почивните дни - днес ще е лудница :)
 

AMitrev

Well-Known Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

@Стамен Стаменов прави разлика междуи редирект (код 3xx) и грешка (код 4xx). Самият редирект става с 3xx, защото старият адрес връща грешка 404.
Какви инструменти какви таблици? Всичко линкове имат логика и лесно могат да се редиректнат към новата такава ;).
Какво като са 10000 вече не съществуващи адреси, патерните примерно ще са няколко (2,3,4,5...).

Правилното правило за такива линкове е - да редиректва към категорията в която е бил продукта.
Няма такова праивло. Най-правилно е да зареждат страницата на продукта и там да се вижда, че няма наличност... така евентуално потребителя може да избере друг подобен продукт.
 

r.stefanov

New Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Добре де, какъв е проблема да се направи 404 с подходяща навигация за клиента за несъществуващите (изтрити) продукти, други да се оставят като просто се означи, че няма наличност както каза AMitrev? 404 не вреди по никакъв начин. 301 е съвсем друго и редиректа към home е ужасно глупаво и досадно. :confused:

404 може да бъде страхотен маркетинг tool.
 

zoomaniak

Well-Known Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Добре де, какъв е проблема да се направи 404 с подходяща навигация за клиента за несъществуващите (изтрити) продукти, други да се оставят като просто се означи, че няма наличност както каза AMitrev? 404 не вреди по никакъв начин. 301 е съвсем друго и редиректа към home е ужасно глупаво и досадно. :confused:

404 може да бъде страхотен маркетинг tool.

За да си отговорите на проблема искам да ви попитам - СЛЕДНОТО:

- Според вас колко % от хората правещи ПОРЪЧКИ през интернет са Интернет грамотни!!! Искам да разбера вашият усет за потребителите в интернет. Ако аз ви кажа, че според мен са 10% ще ми повярвате ли - ако ви кажа, че аз масово продавам на другите 90% - ще ми повярвате ли. Знаете ли кои ХОРА - ПОТРЕБИТЕЛИ се обаждат на служебният телефон - тея дето не разбират от Интернет поръчки и сайтове и магазини. Аз ге наричам "Лигата на недоверчивите"

Е кой % да уважавам повече 10 или 90%.

@AMitrev - има всякакви правила в интернет. Но правилата не са закони!!!

Правил съм си десетки опити - сегашният опит е следният:

- Премахнах от формата за регистрация всички задължителни полета освен 2. Е арееееееееееееееееееее обяснете ми защо получавам поръчки само с име и поща. Има ли хора, които искат да си получат продуктите и на са си подпълнили град - телефон и адрес за доставка - ЕМИ имааааааааааааааааааа - спадат към онея 90% от народа на България дето не разбира от Интернет.

Как мислиш реагира Бай Ганьо на 404?!? Еми така - описвам:

- Я търсим боб за чорбата и нищо не намирам - значи нещо има гнило тука.................
 

zoomaniak

Well-Known Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Мога да монетизирам 404 - защото логовете в магазина ни са вързани и сумират оборот - и месечно тая грешка ударя от 900 до 2 000 лв ............... по продукти.

Не е проблем да монетизирате грешките :)
 

zoomaniak

Well-Known Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Около 600 и 3 000 лв губим от неналични продукти по складовете и др., фактори - защото онея 90% от народа ни си мислят, че всичко ни е налично и е на една ръка разстояние.............

А ония 10% чакат търпеливо да им потвърдим поръчката и всичко останало.

Поведението на потребители - клиенти не е за подценяване от ничия страна.

Хората реагират негативно - дори ако не им отговориш на време в скайпа. И те питат - ЗАЩО ТОГАВА ИМАТЕ скайп.....................
 

r.stefanov

New Member
От: Как да направя redirect 301 на всички стари линкове в .htaccess

Стамене, ето какво аз се опитвам да правя по принцип - третирам потребителите като идиоти... Дори днес имахме една случка, която ми показа колко важно всъщност е да си подготвен за това, че българските потребители не са грамотни (то уж навсякъде говорят, че сме ама... :D). За това правиш всичко възможно дори маймуна да може да се справи с навигацията (на нас за сега не ни остава време, но е в списъка с важните неща за идните месеци). Какво да разбираш под това? Правиш навигацията по такъв начин, че да няма място за грешка. Да използвам твоят пример с двете полета - грешен е (поне според мен, защото така оставяш място за грешки). Нима е трудно на всяко задължително поле да има hoover с tooltip или текст? Или добавяш статии с "как става това, как става онова". В най-лошият случай просто им даваш възможност да ти задават въпроси било то с Live Chat или друг метод. Да, има и потребители, които ако ще да им напишеш с Голям текст пак няма да се справят. Е... аз мога да мина и без тези клиенти - прекалено много време се губи с тях.

Това с логовете не го разбрах.

А относно монетизацията на 404. Потребителят дори не е нужно да разбира, че тази страница е 404 (така или иначе Бай Ганьо не знае какво е). Ако искаш ще ти дам и нагледен пример, но съм сигурен, че знаеш за какво говоря и не е трудно да се направи. Тук въпроса е клиента винаги да може да се ориентира. Кой как ще ще го направи възможно вече си зависи от него.

@AMitrev има общо, защото редиректа на всички грешки могат да се монетизират и да се използват, не да излиза грозна бяла страница или да се пренасочва към руут. Да не говорим и колко статистическа информация можеш да събереш чрез тях.
 

Горе