我无法为Magento扩展程序设置redirect。 请求的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...可configuration为其他东西或更改每个请求,但我认为它不会改变。
所以基本上我需要告诉Nginx在请求example.com/path/时候用example.com/path/回复。
当前configuration:
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