Как можно реализовать редирект с множества страниц, подобных /fajer-shok-kak-ne-postradat-ot-prazdnichnyx-salyutov/?XXXX=YYYY, на одну конкретную страницу /fajer-shok-kak-ne-postradat-ot-prazdnichnyx-salyutov с использованием .htaccess? Возможно ли это и как это можно настроить правильно?
Для реализации редиректа с множества страниц на одну конкретную страницу с использованием .htaccess, можно использовать следующий код: ```apache RewriteEngine on RewriteCond %{QUERY_STRING} ^XXXX=YYYY$ RewriteRule ^fajer-shok-kak-ne-postradat-ot-prazdnichnyx-salyutov/$ /fajer-shok-kak-ne-postradat-ot-prazdnichnyx-salyutov? [L,R=301] ``` Этот код будет перенаправлять все запросы с параметром `XXXX=YYYY` на страницу `/fajer-shok-kak-ne-postradat-ot-prazdnichnyx-salyutov` с использованием постоянного редиректа (301). Помните, что для использования .htaccess у вас должен быть доступ к файлу на сервере и сервер должен поддерживать модуль mod_rewrite. Не забудьте также делать резервную копию .htaccess перед внесением изменений. Если у вас возникнут сложности с настройкой редиректа, рекомендуется обратиться к специалисту по настройке .htaccess или к администратору сервера.
Для того чтобы запретить индексацию GET параметров в robots.txt файле, вы можете использовать директиву "Disallow" с символом "?" для указания наличия GET параметров в URL.
robots.txt:
User-agent: * Disallow: /*?
Символ "?" обозначает начало GET параметров в URL.
Бонус:
Чтобы запретить все get параметры:
nginx conf:
server { listen 80; server_name example.com; location / { if ($args) { return 403; # Запретить доступ к страницам с GET параметрами } # Ваша дальнейшая конфигурация для обработки запросов } }
Этот конфигурационный блок будет блокировать доступ к страницам с GET параметрами и возвращать ошибку 403 "Forbidden".
PS Не забудь ребунтнуть nginx
htaccess:
RewriteEngine On RewriteCond %{QUERY_STRING} .+ RewriteRule ^(.*)$ $1? [R=301,L]
Этот блок будет перенаправлять любые URL с GET параметрами на тот же URL без параметров с кодом 301.