У меня проблемы с настройкой перенаправления для расширения Magento. Запрошенный URL:
example.com/index.php/Cdiscount/Package/download/type/offers/filename/BMS_PREFIX_161d529d7c3ef4b5ae1dca92e2334de6/BMS_PREFIX_161d529d7c3ef4b5ae1dca92e2334de6.zip
но nginx должен вернуть:
example.com/index.php/Cdiscount/Package/download/type/offers/filename/BMS_PREFIX_161d529d7c3ef4b5ae1dca92e2334de6
вместо.
Часть между BMS_PREFIX_
и .zip
будет часто меняться, поэтому, вероятно, он должен получать все запросы файлов .zip в предложениях / местоположении. Я не уверен на 100%, что имя файла в offers/filename/BMS_PREFIX...
настраивается как что-то другое или изменяется по запросу, но я предполагаю, что это не изменится.
Итак, в основном мне нужно сказать Nginx, чтобы он ответил example.com/path/
когда запрос на example.com/path/path.zip
запрашивается.
текущая конфигурация:
location / {
proxy_pass http://127.0.0.1:6081;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxy_hide_header X-Varnish;
proxy_hide_header Via;
proxy_hide_header Vary;
proxy_hide_header X-Server;
proxy_hide_header X-Backend-Server;
proxy_hide_header X-Frame-Options;
proxy_redirect off;
proxy_max_temp_file_size 0;
proxy_connect_timeout 7200;
proxy_send_timeout 7200;
proxy_read_timeout 7200;
proxy_buffer_size 256k;
proxy_buffers 4 512k;
proxy_busy_buffers_size 512k;
proxy_temp_file_write_size 512k;
}
Может вы имеете в виду что-то вроде этого
rewrite ^(/index\.php/Cdiscount/Package/download/type/offers/filename/BMS_PREFIX_)(.+?)/BMS_PREFIX_(.+).zip $1$2;
Добавить строку выше перед proxy_pass
заявление.
Ноты:
example.com/path/otherpath.zip
все равно будет переписано на example.com/path