Я использую систему перевода, которая в настоящее время не работает для не дружественных URL-адресов, таких как
/index.php&option=com_virtuemart&page=shop.browse&category_id=&product_type_id=1&product_type_1_Height_comp=find_in_set_any&product_type_1_Height[0]=Short+%28up+to+80cm%29&product_type_1_Strain_comp=find_in_set_any&product_type_1_Strain[0]=Asia-Central&product_type_1_Yield_comp=find_in_set_any&product_type_1_Yield[0]=High
Итак, я добавил:
RedirectMatch 301 /es/(.*)index.php(.*)$ http://www.seed-city.com/$1
... в мой .htaccess файл для перенаправления на английскую версию.Тем не менее, он добавляет ?lang=es&url=
в начало URL после перенаправления на английскую версию, и я хотел бы иметь возможность удалить его.Это также может быть ?lang=fr&url=
?lang=de&url=
?lang=zh-CN&url=
и т. Д.
Я пробовал столько, сколько мог, но не смог удалить его успешно.Спасибо за ваше время, и любая помощь будет принята с благодарностью.Спасибо, Натастна2.
РЕДАКТИРОВАТЬ:
@ vbence Спасибо за ваш ответ.Я хотел бы взять этот URL:
http://www.seed-city.com/?lang=es&url=index.php&option=com_virtuemart&page=shop.browse&category_id=&product_type_id=1&product_type_1_seed_type_comp=find_in_set_any&product_type_1_seed_type[0]=Regular&product_type_1_indoor_flowering_time_comp=find_in_set_any&product_type_1_indoor_flowering_time[0]=Medium+%2856+to+90+days%29&product_type_1_Outdoor_harvest_time_comp=find_in_set_any&product_type_1_Outdoor_harvest_time[0]=Middle+of+September
и изменить его на:
http://www.seed-city.com/index.php&option=com_virtuemart&page=shop.browse&category_id=&product_type_id=1&product_type_1_seed_type_comp=find_in_set_any&product_type_1_seed_type[0]=Regular&product_type_1_indoor_flowering_time_comp=find_in_set_any&product_type_1_indoor_flowering_time[0]=Medium+%2856+to+90+days%29&product_type_1_Outdoor_harvest_time_comp=find_in_set_any&product_type_1_Outdoor_harvest_time[0]=Middle+of+September
, удалив ?lang=es&url=
с начала.Это потому, что теперь, если кто-то нажимает кнопку перевода на испанский язык один раз, он перенаправляется на английскую версию в порядке, так как она соответствует моему предыдущему правилу:
RedirectMatch 301 /es/(.*)index.php(.*)$ http://www.seed-city.com/$1
Однако, если они щелкают по нему один раз, URL-адрес теперь запускаетсяс? lang = es & url = и, следовательно, не совпадает с моим предыдущим правилом.При втором щелчке на флаге перевода они переходят на страницу с ошибкой, а не на английскую версию, которую я бы предпочел.Вот почему я пытаюсь удалить запрос в начале URL.Полученный URL не должен содержать языковых идентификаторов, как на английском языке по умолчанию.Спасибо за ваш ответ.