Re: редирект запроса без get параметров

2020-08-12 Пенетрантность bagas
Спасибо за содействие, сделал так.
if переписывал переменную $1 в ресайзе.
Получилось так.

location ~ ^/files/products/(.+) {
set $file_name_prod $1;
if ($request_uri ~ "[A-fa-f0-9]{32}$") {
rewrite ^(.*)$ $uri? permanent;
}
try_files $uri $uri/
/resize/resize.php?file=$file_name_prod=$args;
}


fox Wrote:
---
> Можно попробовать так:
> location /files/products/ {
> # root or alias
> if (!-f $request_filename) { # файл не существует
> rewrite # /resize/resize.php;
> break;
> }
> if ($request_uri ~ '\?') {
> return 301 $uri;
> }
> }
> 
> location #.php {
> # …
> }
>

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,289056,289079#msg-289079

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: редирект запроса без get параметров

2020-08-12 Пенетрантность fox
Можно попробовать так:
location /files/products/ {
# root or alias
if (!-f $request_filename) { # файл не существует
rewrite # /resize/resize.php;
break;
}
if ($request_uri ~ '\?') {
return 301 $uri;
}
}

location #.php {
# …
}

11.08.2020 20:41, bagas пишет:
> Добрый день.
> Подскажите пожалуйста по структуре редиректа.
> 
> При запросе к директориям /files/products и /files/content с
> GET-параметром(-ами) и при существовании файла - 301 редирект на основной
> url без GET-параметров (нужно удалить все GET-параметры из URL картинок из
> указанных папок).
> 
> Уточнение если файла не существует, то запрос перенаправляется на php-скрипт
> как и сейчас (try_files $uri $uri/ /resize/resize.php?file=$1=$args;)
> вне зависимости от наличия/отсутствия GET-параметров в запросе. 
> 
> Имееются url
> https://local.local/files/products/paal.320x504.png?bca30a33g344y444w5577
> должен сработать 301й редирект на
> https://local.local/files/products/paal.320x504.png
> 
> В nginx делаю.
> location ~ ^/files/products/(.+) {
> try_files $uri $uri/ @bagas;
> if ($query_string ~ "^[A-fa-f0-9]{32}$") {
> rewrite ^(.*)$ $uri? permanent;
> }
> }
> location @bagas {
> try_files $uri /resize/resize.php?file=$1=$args;
> }
> 
> 
> GET информация обрезается в url, но если нет файла то не происходит передача
> get запроса.
> Подскажите как лучше такое сделать?
> 
> Posted at Nginx Forum: 
> https://forum.nginx.org/read.php?21,289056,289056#msg-289056
> 
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
> 

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru