Назад | Перейти на главную страницу

Удалить строку запроса из URL

У нас есть магазин Magento, который добавляет запрос к нашему URL-адресу, когда вы меняете представления магазина Magento на веб-интерфейсе.

т.е. http://www.domain.com/?___store=uken

Есть ли способ удалить ? ___ store = uken с конфигурацией NGINX? Скажите, удалите любой запрос, начинающийся с ? ___ store =. Я очень новичок в конфигурации сервера и, в частности, nginx.

Если вам нужно удалить строку запроса __store = из URL-адреса, вы должны очистить переменную $ args а потом переписать основную локацию.

Попробуйте использовать это правило, чтобы удалить строку запроса из URL:

location / {
    set $args '';
    rewrite ^/(.*)$ /$1 permanent;
}

или если у вас есть URL-адрес веб-сайта, например: http://www.mystore.com/shop/index.php?__store=en вы можете переписать новое местоположение с помощью:

location /shop {
    set $args '';
    rewrite ^/shop/(.*)$ /shop/$1 permanent;
}

Если вы хотите удалить определенный параметр из кратных:

if ($request_uri ~ "([^\?]*)\?(.*)_=([^&]*)&?(.*)") {
    set $original_path $1; 
    set $args1 $2; 
    set $unwanted $3; 
    set $args2 $4; 
    set $args ""; 

    rewrite ^ "${original_path}?${args1}${args2}" permanent;
}