Въпреки че е лесно да настроите сайт на WordPress, може да пропуснете връзки, които се отразяват негативно на потребителското изживяване, докато управлявате съдържанието си. Връзките за грешки с кодове 404 могат лесно да бъдат намерени ръчно и чрез WordPress. Освен това можете да наблюдавате имейлите, изпратени от WordPress, и да прегледате всички проблеми с вашия сайт. За да коригирам неправилни кодове, компилирах за вас най-бързите 301 метода за пренасочване в WordPress.

Какво е 301 Redirect?

301 кодът е един от http кодовете за състояние. 301 пренасочване е името, дадено на пренасочване на страница от стария й URL адрес към новия й URL адрес с помощта на кода 301. Използва се най-вече, когато URL адресът на страницата се промени или съдържанието й се премести. Има важно място в SEO процеса. По-долу можете да намерите изчерпателни примери за примерни пренасочвания 301.

Обикновено 301 пренасочване

Обикновено пренасочване 301 се осъществява със следния код, написан във файла .htaccess в основната директория на вашия сайт.

https://www.domainadresiniz.com/yeni-sayfanizin-absolute-urlsi/" style="color:#272822;display:none;background-color:#F8F8F2" aria-label="Копиране" data-copied-text="Копирано!" data-has-text-button="textSimple" data-inside-header-type="headlights" aria-live="polite" class="code-block-pro-copy-button">копие
Redirect 301 /eski-sayfanizin-relative-urlsi/ https://www.domainadresiniz.com/yeni-sayfanizin-absolute-urlsi/

Ако вашият сайт има панел или използвате готов cms/софтуер, е възможно да постигнете този процес без да пишете код чрез менюто за пренасочвания във вашия панел. За да дадем пример за инфраструктурата на WordPress, 301 пренасочвания в WordPress могат да бъдат направени от Rank Math SEO, Yoast SEO, All in One SEO и подобни SEO добавки, без да е необходимо да пишете код. За сложни пренасочвания обаче може да се наложи да напишете специален код във файла .htaccess. Като примери за сложни пренасочвания, ще споделим кодовете, които написахме за най-често необходимите пренасочвания.

Пренасочване на всички параметри на заявката с 301

# BEGIN: Redirect non-critical query parameters to the current page with 301 redirect by Onur Özden Web Çözümleri
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !(.*)wp-admin(.*)
RewriteCond %{REQUEST_URI} !(.*)wp-login(.*)
RewriteCond %{REQUEST_URI} !\.(jpe?g|gif|bmp|png|webp|avif|tiff|pdf|mp4|avi|mkv|flv|zip|rar|docx|doc|xlsx|csv|txt|rtf|xml|css|js) [NC]
RewriteCond %{QUERY_STRING} .
RewriteRule ^ %{REQUEST_URI}? [L,R=301]
</ifmodule>
# END: Redirect non-critical query parameters to the current page with 301 redirect by Onur Özden Web Çözümleri

Можете да пренасочите всички параметри на заявката обратно към текущия URL адрес с кодовете по-горе. В примерния код специалните страници на WordPress, като страницата за вход по подразбиране и страницата за администриране, и някои специални типове файлове са изключени. Можете да правите корекции на изключенията, ако е необходимо.

Htaccess HTTPS и WWW пренасочване

Отварянето на страниците като http, защото те не са насочени към https версията, въпреки че имат SSL, и публикуването на същата версия на страницата без www, въпреки че www се използва на сайта, е голям проблем не само по технически причини, но и по отношение на SEO и потребителското изживяване. За да разрешите този проблем, можете да пренасочите http URL адресите към https с кодовете по-долу и да се уверите, че страницата се отваря само с www.

https://www.%{HTTP_HOST}/$1/ [R=301,L] </ifmodule> # КРАЙ: Пренасочване на всички URL адреси към WWW с 301 пренасочване от Onur Özden Web Çözümleri" style="color:#272822;display:none;background-color:#F8F8F2" aria-label="Копиране" data-copied-text="Копирано!" data-has-text-button="textSimple" data-inside-header-type="headlights" aria-live="pote" class="code-block-pro-copy-button">копие
# BEGIN: Redirect All Urls to WWW with 301 redirect by Onur Özden Web Çözümleri
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1/ [R=301,L]
</ifmodule>
# END: Redirect All Urls to WWW with 301 redirect by Onur Özden Web Çözümleri

Файлът .htaccess се създава автоматично със структурата на постоянните връзки на WP. Ако не можете да намерите файла, можете да създадете такъв ръчно чрез ftp или контролния панел на хостинга:

  • Отворете Notepad. (или какъвто и да е редактор на код, който използвате)
  • Поставете съответния код.
  • Направете файловото разширение .htaccess вместо .txt, което е съкратено за текст, и не посочвайте име.
  • Добавете създадения от вас файл в основната директория на вашия сайт (тази директория често се нарича public_html или htdocs).

С този метод можете да извършвате HTTPS и WWW пренасочване с .htaccess.

Htaccess HTTPS пренасочване

Ако не използвате www на вашия сайт и искате само да направите HTTP URL адреси https, просто добавете тези кодове, които написахме за вас, в основната директория на вашия сайт.

https://%{HTTP_HOST}/%{REQUEST_URI} [R=301,L] RewriteCond %{HTTPS} изключено RewriteRule ^ https://%{HTTP_HOST}/%{REQUEST_URI} [R=301,L] </ifmodule> # КРАЙ: Пренасочване на всички URL адреси към https и не-www с пренасочване 301 от Onur Özden Web Çözümleri" style="color:#272822;display:none;background-color:#F8F8F2" aria-label="Копиране" data-copied-text="Копирано!" data-has-text-button="textSimple" data-inside-header-type="headlights" aria-live="pote" class="code-block-pro-copy-button">копие
# BEGIN: Redirect All Urls to https and non-www with 301 redirect by Onur Özden Web Çözümleri
<ifmodule mod_rewrite.c>
# Skip it if the url is correct
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* - [L]

# https and non-www redirect
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^ https://%{HTTP_HOST}/%{REQUEST_URI} [R=301,L]

RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}/%{REQUEST_URI} [R=301,L]
</ifmodule>
# END: Redirect All Urls to https and non-www with 301 redirect by Onur Özden Web Çözümleri

Пренасочване на домейн

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

# BEGIN: Redirect All Old Domain Urls to New Domain Urls with 301 Redirect by Onur Özden Web Çözümleri
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^olddomain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.olddomain\.com$
RewriteRule ^(.*)$ "https\:\/\/www\.newdomain\.com\/$1" [R=301,L]
</ifmodule>
# END: Redirect All Old Domain Urls to New Domain Urls with 301 Redirect by Onur Özden Web Çözümleri

Htaccess AMP пренасочване

Ако сте използвали AMP на сайта си за известно време и след това сте го премахнали, вашите връзки, редактирани от AMP, може да са били индексирани в търсачките. След като премахнете AMP, трябва да пренасочите тези връзки обратно към текущото им състояние. В противен случай връзките с параметъра за заявка amp на страницата с резултати от търсачката ще върнат 404 и потребителят няма да получи достъп до съдържанието. Промяната на URL адреса с amp към без amp се нарича „пренасочване от amp към non-amp“. Можете да използвате кодовете по-долу, за да направите това пренасочване с помощта на код 301.

# BEGIN: AMP to NON-AMP Redirect for All Known AMP Variations by Onur Özden Web Çözümleri
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} amp [OR,NC]
RewriteCond %{QUERY_STRING} noamp=mobile [OR,NC]
RewriteCond %{QUERY_STRING} amp=1 [NC]
RewriteRule ^ %{REQUEST_URI}? [L,R=301]
RewriteCond %{REQUEST_URI} (.+)/amp(.*)$ [NC]
RewriteRule ^ %1/ [R=301,L]
</ifmodule>
# END: AMP to NON-AMP Redirect for All Known AMP Variations by Onur Özden Web Çözümleri

WordPress Htaccess файл

Ако вашият файл htaccess в WordPress е повреден и кодовете по подразбиране, добавени от системата WordPress, са загубени, можете да добавите кодовете htaccess отново, като щракнете върху Настройки> Постоянни връзки> Запазване. Ако нямате достъп до администраторския си панел, можете да отворите файла .htaccess в основната директория на вашия сайт и да въведете следните кодове. Тези кодове са валидни само за WordPress сайтове, инсталирани в главната директория на поддомейна и домейна. Ако вашият сайт е инсталиран в подпапка, трябва да използвате кодовете в следващото заглавие.

# BEGIN WordPress

RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Htaccess кодове за WordPress в подпапка

Ако вашият htaccess файл в WordPress е повреден и вашият сайт е инсталиран в подпапка вместо в основната директория или поддомейн, можете да използвате кодовете по-долу, като ги добавите към .htaccess файла в основната директория на сайта. В кодовете не забравяйте да замените частта „подпапка“ с името на подпапката, в която сте инсталирали WordPress, а частта „example.com“ с вашия домейн.

# BEGIN WordPress

<ifmodule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/subfolder/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /subfolder/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ subfolder/index.php [L]
</ifmodule>

# END WordPress

Можете да извършите процеса на пренасочване с най-добрата практика, като използвате кодовете за пренасочване, създадени за най-често срещаните ситуации, които сме подготвили за вас във вашия .htaccess файл.

Често задавани въпроси


Какво е пренасочване на WordPress 301?

Пренасочването на WordPress 301 е името, дадено на пренасочване на страници от вашия сайт, чийто URL адрес е променен, вече не се използва или е преместен, към друга подходяща страница. Пренасочването 301 носи името си от кода 301, който е HTTP кодът на състоянието.
Какво е пренасочване на htaccess 301?

Пренасочването 301 .htaccess е процесът на извършване на пренасочване 301 чрез записване на кодове за пренасочване във файла .htaccess. използва се htaccess файл, той се нарича "htaccess 301 redirect".
Как да направя пренасочване на WordPress 301?

Можете да направите пренасочване на WordPress 301, без да имате нужда от познания за кода, като използвате SEO плъгини като Rank Math SEO, Yoast SEO, All in One SEO или плъгини за пренасочване като Redirection, 301 Redirect.