#regex #.htaccess #redirect
Вопрос:
Это первый раз, когда я опубликовал сообщение за многие годы просмотра сайта. На этот раз мне не удалось найти, как я могу сделать это перенаправление в htaccess.
У меня есть следующий URL-адрес:
domain.com/es/category/product1 domain.com/es/product1
И я хочу перенаправить на:
domain.es/category/product1
Я уже пробовал это:
Redirectmatch 301 ^/es/(.*)product1 https://domain.es/category/product1
И
Redirectmatch 301 ^/en/(.*)/product1 https://domain.es/category/product1
Вопрос в том, как настроить его так, чтобы он улавливал все между /en/ и product1 . Либо буквы, либо косая черта.
Ответ №1:
С показанными вами попытками, пожалуйста, попробуйте следовать файлу правил htaccess. Обязательно поместите это правило в верхнюю часть вашего файла htaccess(учитывая, что у вас могут быть другие правила, которые переписывают URL-адреса здесь). Убедитесь, что ваш файл htaccess находится в том же пути es
, что и папка.
Пожалуйста, не забудьте очистить кэш вашего браузера перед тестированием ваших URL-адресов.
##Enabling rewrite engine here..... RewriteEngine ON RewriteCond %{HTTP_HOST} ^(www.)?(domain).com$ [NC] ##Doing redirect of uris which starts from es may/may not have category after it and redirecting to as per OP's requirement. RewriteRule ^(es)/(?:category/)?product1/?$ http://%1.$1/category/product1 [NC,L,R=301]