<div><div><div dir="auto">I appreciate Guillaume’s diplomacy :)</div></div><div dir="auto"><br></div><div dir="auto">Your issue (one of them at least) is that in your cascaded varnish setup the hash key of the cached url, in both varnish storages, is the one you use to originally access the asset. Your vcl hash routine might also be a custom one.. that would be the next thing to look at if what I’m saying here doesn’t fix it. </div><div dir="auto"><br></div><div dir="auto">So, purge</div><div dir="auto"><a href="http://192.168.200.13/Naserfeiz.mp4" target="_blank">http://192.168.200.13/Naserfeiz.mp4</a></div><div dir="auto">and NOT</div><div dir="auto"><div><a href="http://192.168.200.12:8080/Naserfeiz.mp4" target="_blank">http://192.168.200.12:8080/Naserfeiz.mp4</a></div>when in the cascaded setup</div></div><div dir="auto"><br></div><div dir="auto">Cheers</div><div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, 14 Dec 2019 at 09:16, hamidreza hosseini <<a href="mailto:hrhosseini@hotmail.com" target="_blank">hrhosseini@hotmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div dir="ltr">
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Hi,</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
Please annwer my question, I sent you my test</div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<br></div></div><div dir="ltr"><div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
</div>
<div id="m_1231143223751743120m_-3046864990878589310appendonsend"></div>
<hr style="display:inline-block;width:98%">
<div id="m_1231143223751743120m_-3046864990878589310divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> varnish-misc <varnish-misc-bounces+hrhosseini=<a href="mailto:hotmail.com@varnish-cache.org" target="_blank">hotmail.com@varnish-cache.org</a>> on behalf of hamidreza hosseini <<a href="mailto:hrhosseini@hotmail.com" target="_blank">hrhosseini@hotmail.com</a>><br>
<b>Sent:</b> Wednesday, December 11, 2019 11:49 PM<br>
<b>To:</b> Guillaume Quintard <<a href="mailto:guillaume@varnish-software.com" target="_blank">guillaume@varnish-software.com</a>><br>
<b>Cc:</b> <a href="mailto:varnish-misc@varnish-cache.org" target="_blank">varnish-misc@varnish-cache.org</a> <<a href="mailto:varnish-misc@varnish-cache.org" target="_blank">varnish-misc@varnish-cache.org</a>><br>
<b>Subject:</b> Re: Varnish doesnt purge</font>
<div> </div>
</div>

<div dir="ltr"><span>I do all steps now again, this is the resault:<br>
</span>
<div>STEP ONE:<br>
</div>
<div>First of all i configure a varnish (with file backend) in front of swift/Nginx and i ask the url that exist in swift with curl,<br>
</div>
<div><br>
</div>
<div>varnish-file$curl -I <a href="http://192.168.200.12:8080/Naserfeiz.mp4" target="_blank">http://192.168.200.12:8080/Naserfeiz.mp4</a> -H "newtrack: yes"<br>
</div>
<div><br>
</div>
<div>HTTP/1.1 200 OK<br>
</div>
<div>Server: nginx<br>
</div>
<div>Date: Thu, 12 Dec 2019 07:29:32 GMT<br>
</div>
<div>Content-Type: text/plain<br>
</div>
<div>Content-Length: 23521499<br>
</div>
<div>Last-Modified: Sun, 19 Nov 2000 08:52:00 GMT<br>
</div>
<div>ETag: "3a1794b0-166e8db"<br>
</div>
<div>X-Varnish: 2<br>
</div>
<div>Age: 0<br>
</div>
<div>Via: 1.1 varnish (Varnish/6.0)<br>
</div>
<div>Accept-Ranges: bytes<br>
</div>
<div>Connection: keep-alive<br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>varnish cach that object and then i purge the url:<br>
</div>
<div><br>
</div>
<div>varnish-file$ curl -v -k -X PURGE <a href="http://192.168.200.12:8080/Naserfeiz.mp4" target="_blank">http://192.168.200.12:8080/Naserfeiz.mp4</a> -o /dev/null -H "newtrack: yes"<br>
</div>
<div><br>
</div>
<div>* Â  Trying 192.168.200.12...<br>
</div>
<div>  % Total Â  Â % Received % Xferd Â Average Speed Â  Time Â  Â Time Â  Â  Time Â Current<br>
</div>
<div>  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â Dload Â Upload Â  Total Â  Spent Â  Â Left Â Speed<br>
</div>
<div>  0 Â  Â  0 Â  Â 0 Â  Â  0 Â  Â 0 Â  Â  0 Â  Â  Â 0 Â  Â  Â 0 --:--:-- --:--:-- --:--:-- Â  Â  0* Connected to 192.168.200.12 (192.168.200.12) port 8080 (#0)<br>
</div>
<div>> PURGE /Naserfeiz.mp4 HTTP/1.1<br>
</div>
<div>> Host: <a href="http://192.168.200.12:8080" target="_blank">192.168.200.12:8080</a><br>
</div>
<div>> User-Agent: curl/7.47.0<br>
</div>
<div>> Accept: */*<br>
</div>
<div>> newtrack: yes<br>
</div>
<div>> <br>
</div>
<div>< HTTP/1.1 200 Purged<br>
</div>
<div>< Date: Thu, 12 Dec 2019 07:29:16 GMT<br>
</div>
<div>< Server: Varnish<br>
</div>
<div>< X-Varnish: 32770<br>
</div>
<div>< Content-Type: text/html; charset=utf-8<br>
</div>
<div>< Retry-After: 5<br>
</div>
<div>< Content-Length: 240<br>
</div>
<div>< Accept-Ranges: bytes<br>
</div>
<div>< Connection: keep-alive<br>
</div>
<div>< <br>
</div>
<div>{ [240 bytes data]<br>
</div>
<div>100 Â  240 Â 100 Â  240 Â  Â 0 Â  Â  0 Â  124k Â  Â  Â 0 --:--:-- --:--:-- --:--:-- Â 234k<br>
</div>
<div>* Connection #0 to host 192.168.200.12 left intact<br>
</div>
<div><br>
</div>
<div>The object purged successfully and it didnt exist in cach anymore.<br>
</div>
<div><br>
</div>
<div>This is varnishlog resault:<br>
</div>
<div><br>
</div>
<div>varnish-file$ sudo varnishlog -d Â -g request<br>
</div>
<div>* Â  << Request Â >> 2 Â  Â  Â  Â  <br>
</div>
<div>- Â  Begin Â  Â  Â  Â  Â req 1 rxreq<br>
</div>
<div>- Â  Timestamp Â  Â  Â Start: 1576135743.442646 0.000000 0.000000<br>
</div>
<div>- Â  Timestamp Â  Â  Â Req: 1576135743.442646 0.000000 0.000000<br>
</div>
<div>- Â  ReqStart Â  Â  Â  192.168.200.12 5432 a0<br>
</div>
<div>- Â  ReqMethod Â  Â  Â HEAD<br>
</div>
<div>- Â  ReqURL Â  Â  Â  Â  /Naserfeiz.mp4<br>
</div>
<div>- Â  ReqProtocol Â  Â HTTP/1.1<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Host: <a href="http://192.168.200.12:8080" target="_blank">192.168.200.12:8080</a><br>
</div>
<div>- Â  ReqHeader Â  Â  Â User-Agent: curl/7.47.0<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Accept: */*<br>
</div>
<div>- Â  ReqHeader Â  Â  Â newtrack: yes<br>
</div>
<div>- Â  ReqHeader Â  Â  Â X-Forwarded-For: 192.168.200.12<br>
</div>
<div>- Â  VCL_call Â  Â  Â  RECV<br>
</div>
<div>- Â  VCL_return Â  Â  hash<br>
</div>
<div>- Â  VCL_call Â  Â  Â  HASH<br>
</div>
<div>- Â  VCL_return Â  Â  lookup<br>
</div>
<div>- Â  VCL_call Â  Â  Â  MISS<br>
</div>
<div>- Â  VCL_return Â  Â  fetch<br>
</div>
<div>- Â  Link Â  Â  Â  Â  Â  bereq 3 fetch<br>
</div>
<div>- Â  Timestamp Â  Â  Â Fetch: 1576135743.444347 0.001701 0.001701<br>
</div>
<div>- Â  RespProtocol Â  HTTP/1.1<br>
</div>
<div>- Â  RespStatus Â  Â  200<br>
</div>
<div>- Â  RespReason Â  Â  OK<br>
</div>
<div>- Â  RespHeader Â  Â  Server: nginx<br>
</div>
<div>- Â  RespHeader Â  Â  Date: Thu, 12 Dec 2019 07:29:32 GMT<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Type: text/plain<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Length: 23521499<br>
</div>
<div>- Â  RespHeader Â  Â  Last-Modified: Sun, 19 Nov 2000 08:52:00 GMT<br>
</div>
<div>- Â  RespHeader Â  Â  ETag: "3a1794b0-166e8db"<br>
</div>
<div>- Â  RespHeader Â  Â  X-Varnish: 2<br>
</div>
<div>- Â  RespHeader Â  Â  Age: 0<br>
</div>
<div>- Â  RespHeader Â  Â  Via: 1.1 varnish (Varnish/6.0)<br>
</div>
<div>- Â  VCL_call Â  Â  Â  DELIVER<br>
</div>
<div>- Â  VCL_return Â  Â  deliver<br>
</div>
<div>- Â  Timestamp Â  Â  Â Process: 1576135743.444382 0.001736 0.000036<br>
</div>
<div>- Â  RespHeader Â  Â  Accept-Ranges: bytes<br>
</div>
<div>- Â  RespHeader Â  Â  Connection: keep-alive<br>
</div>
<div>- Â  Timestamp Â  Â  Â Resp: 1576135743.444474 0.001828 0.000092<br>
</div>
<div>- Â  ReqAcct Â  Â  Â  Â 112 0 112 295 0 295<br>
</div>
<div>- Â  End Â  Â  Â  Â  Â  Â <br>
</div>
<div>** Â << BeReq Â  Â >> 3 Â  Â  Â  Â  <br>
</div>
<div>-- Â Begin Â  Â  Â  Â  Â bereq 2 fetch<br>
</div>
<div>-- Â VCL_use Â  Â  Â  Â boot<br>
</div>
<div>-- Â Timestamp Â  Â  Â Start: 1576135743.442807 0.000000 0.000000<br>
</div>
<div>-- Â BereqMethod Â  Â HEAD<br>
</div>
<div>-- Â BereqURL Â  Â  Â  /Naserfeiz.mp4<br>
</div>
<div>-- Â BereqProtocol Â HTTP/1.1<br>
</div>
<div>-- Â BereqHeader Â  Â Host: <a href="http://192.168.200.12:8080" target="_blank">192.168.200.12:8080</a><br>
</div>
<div>-- Â BereqHeader Â  Â User-Agent: curl/7.47.0<br>
</div>
<div>-- Â BereqHeader Â  Â Accept: */*<br>
</div>
<div>-- Â BereqHeader Â  Â newtrack: yes<br>
</div>
<div>-- Â BereqHeader Â  Â X-Forwarded-For: 192.168.200.12<br>
</div>
<div>-- Â BereqMethod Â  Â GET<br>
</div>
<div>-- Â BereqHeader Â  Â Accept-Encoding: gzip<br>
</div>
<div>-- Â BereqHeader Â  Â X-Varnish: 3<br>
</div>
<div>-- Â VCL_call Â  Â  Â  BACKEND_FETCH<br>
</div>
<div>-- Â VCL_return Â  Â  fetch<br>
</div>
<div>-- Â BackendOpen Â  Â 27 boot.swift_proxy_1 192.168.200.11 8080 192.168.200.12 6846<br>
</div>
<div>-- Â BackendStart Â  192.168.200.11 8080<br>
</div>
<div>-- Â Timestamp Â  Â  Â Bereq: 1576135743.443586 0.000779 0.000779<br>
</div>
<div>-- Â Timestamp Â  Â  Â Beresp: 1576135743.444017 0.001210 0.000431<br>
</div>
<div>-- Â BerespProtocol HTTP/1.1<br>
</div>
<div>-- Â BerespStatus Â  200<br>
</div>
<div>-- Â BerespReason Â  OK<br>
</div>
<div>-- Â BerespHeader Â  Server: nginx<br>
</div>
<div>-- Â BerespHeader Â  Date: Thu, 12 Dec 2019 07:29:32 GMT<br>
</div>
<div>-- Â BerespHeader Â  Content-Type: text/plain<br>
</div>
<div>-- Â BerespHeader Â  Content-Length: 23521499<br>
</div>
<div>-- Â BerespHeader Â  Last-Modified: Sun, 19 Nov 2000 08:52:00 GMT<br>
</div>
<div>-- Â BerespHeader Â  Connection: keep-alive<br>
</div>
<div>-- Â BerespHeader Â  ETag: "3a1794b0-166e8db"<br>
</div>
<div>-- Â BerespHeader Â  Accept-Ranges: bytes<br>
</div>
<div>-- Â TTL Â  Â  Â  Â  Â  Â RFC 120 10 0 1576135743 1576135743 1576135772 0 0 cacheable<br>
</div>
<div>-- Â VCL_call Â  Â  Â  BACKEND_RESPONSE<br>
</div>
<div>-- Â TTL Â  Â  Â  Â  Â  Â VCL 86400 10 0 1576135743 cacheable<br>
</div>
<div>-- Â VCL_return Â  Â  deliver<br>
</div>
<div>-- Â Storage Â  Â  Â  Â file s0<br>
</div>
<div>-- Â Fetch_Body Â  Â  3 length stream<br>
</div>
<div>-- Â BackendReuse Â  27 boot.swift_proxy_1<br>
</div>
<div>-- Â Timestamp Â  Â  Â BerespBody: 1576135743.747835 0.305028 0.303818<br>
</div>
<div>-- Â Length Â  Â  Â  Â  23521499<br>
</div>
<div>-- Â BereqAcct Â  Â  Â 181 0 181 241 23521499 23521740<br>
</div>
<div>-- Â End Â  Â  Â  Â  Â  Â <br>
</div>
<div><br>
</div>
<div>* Â  << Request Â >> 32770 Â  Â  <br>
</div>
<div>- Â  Begin Â  Â  Â  Â  Â req 32769 rxreq<br>
</div>
<div>- Â  Timestamp Â  Â  Â Start: 1576135756.680792 0.000000 0.000000<br>
</div>
<div>- Â  Timestamp Â  Â  Â Req: 1576135756.680792 0.000000 0.000000<br>
</div>
<div>- Â  ReqStart Â  Â  Â  192.168.200.12 5438 a0<br>
</div>
<div>- Â  ReqMethod Â  Â  Â PURGE<br>
</div>
<div>- Â  ReqURL Â  Â  Â  Â  /Naserfeiz.mp4<br>
</div>
<div>- Â  ReqProtocol Â  Â HTTP/1.1<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Host: <a href="http://192.168.200.12:8080" target="_blank">192.168.200.12:8080</a><br>
</div>
<div>- Â  ReqHeader Â  Â  Â User-Agent: curl/7.47.0<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Accept: */*<br>
</div>
<div>- Â  ReqHeader Â  Â  Â newtrack: yes<br>
</div>
<div>- Â  ReqHeader Â  Â  Â X-Forwarded-For: 192.168.200.12<br>
</div>
<div>- Â  VCL_call Â  Â  Â  RECV<br>
</div>
<div>- Â  VCL_return Â  Â  purge<br>
</div>
<div>- Â  VCL_call Â  Â  Â  HASH<br>
</div>
<div>- Â  VCL_return Â  Â  lookup<br>
</div>
<div>- Â  VCL_call Â  Â  Â  PURGE<br>
</div>
<div>- Â  VCL_return Â  Â  synth<br>
</div>
<div>- Â  Timestamp Â  Â  Â Process: 1576135756.680982 0.000190 0.000190<br>
</div>
<div>- Â  RespHeader Â  Â  Date: Thu, 12 Dec 2019 07:29:16 GMT<br>
</div>
<div>- Â  RespHeader Â  Â  Server: Varnish<br>
</div>
<div>- Â  RespHeader Â  Â  X-Varnish: 32770<br>
</div>
<div>- Â  RespProtocol Â  HTTP/1.1<br>
</div>
<div>- Â  RespStatus Â  Â  200<br>
</div>
<div>- Â  RespReason Â  Â  OK<br>
</div>
<div>- Â  RespReason Â  Â  Purged<br>
</div>
<div>- Â  VCL_call Â  Â  Â  SYNTH<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Type: text/html; charset=utf-8<br>
</div>
<div>- Â  RespHeader Â  Â  Retry-After: 5<br>
</div>
<div>- Â  VCL_return Â  Â  deliver<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Length: 240<br>
</div>
<div>- Â  Storage Â  Â  Â  Â malloc Transient<br>
</div>
<div>- Â  RespHeader Â  Â  Accept-Ranges: bytes<br>
</div>
<div>- Â  RespHeader Â  Â  Connection: keep-alive<br>
</div>
<div>- Â  Timestamp Â  Â  Â Resp: 1576135756.681190 0.000399 0.000208<br>
</div>
<div>- Â  ReqAcct Â  Â  Â  Â 113 0 113 218 240 458<br>
</div>
<div>- Â  End Â  Â  Â  Â  Â  Â <br>
</div>
<div><br>
</div>
<div>* Â  << Request Â >> 32772 Â  Â  <br>
</div>
<div>- Â  Begin Â  Â  Â  Â  Â req 32771 rxreq<br>
</div>
<div>- Â  Timestamp Â  Â  Â Start: 1576135769.304679 0.000000 0.000000<br>
</div>
<div>- Â  Timestamp Â  Â  Â Req: 1576135769.304679 0.000000 0.000000<br>
</div>
<div>- Â  ReqStart Â  Â  Â  192.168.200.12 5440 a0<br>
</div>
<div>- Â  ReqMethod Â  Â  Â HEAD<br>
</div>
<div>- Â  ReqURL Â  Â  Â  Â  /Naserfeiz.mp4<br>
</div>
<div>- Â  ReqProtocol Â  Â HTTP/1.1<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Host: <a href="http://192.168.200.12:8080" target="_blank">192.168.200.12:8080</a><br>
</div>
<div>- Â  ReqHeader Â  Â  Â User-Agent: curl/7.47.0<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Accept: */*<br>
</div>
<div>- Â  ReqHeader Â  Â  Â newtrack: yes<br>
</div>
<div>- Â  ReqHeader Â  Â  Â X-Forwarded-For: 192.168.200.12<br>
</div>
<div>- Â  VCL_call Â  Â  Â  RECV<br>
</div>
<div>- Â  VCL_return Â  Â  hash<br>
</div>
<div>- Â  VCL_call Â  Â  Â  HASH<br>
</div>
<div>- Â  VCL_return Â  Â  lookup<br>
</div>
<div>- Â  VCL_call Â  Â  Â  MISS<br>
</div>
<div>- Â  VCL_return Â  Â  fetch<br>
</div>
<div>- Â  Link Â  Â  Â  Â  Â  bereq 32773 fetch<br>
</div>
<div>- Â  Timestamp Â  Â  Â Fetch: 1576135769.306630 0.001951 0.001951<br>
</div>
<div>- Â  RespProtocol Â  HTTP/1.1<br>
</div>
<div>- Â  RespStatus Â  Â  200<br>
</div>
<div>- Â  RespReason Â  Â  OK<br>
</div>
<div>- Â  RespHeader Â  Â  Server: nginx<br>
</div>
<div>- Â  RespHeader Â  Â  Date: Thu, 12 Dec 2019 07:29:58 GMT<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Type: text/plain<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Length: 23521499<br>
</div>
<div>- Â  RespHeader Â  Â  Last-Modified: Sun, 19 Nov 2000 08:52:00 GMT<br>
</div>
<div>- Â  RespHeader Â  Â  ETag: "3a1794b0-166e8db"<br>
</div>
<div>- Â  RespHeader Â  Â  X-Varnish: 32772<br>
</div>
<div>- Â  RespHeader Â  Â  Age: 0<br>
</div>
<div>- Â  RespHeader Â  Â  Via: 1.1 varnish (Varnish/6.0)<br>
</div>
<div>- Â  VCL_call Â  Â  Â  DELIVER<br>
</div>
<div>- Â  VCL_return Â  Â  deliver<br>
</div>
<div>- Â  Timestamp Â  Â  Â Process: 1576135769.306657 0.001978 0.000027<br>
</div>
<div>- Â  RespHeader Â  Â  Accept-Ranges: bytes<br>
</div>
<div>- Â  RespHeader Â  Â  Connection: keep-alive<br>
</div>
<div>- Â  Timestamp Â  Â  Â Resp: 1576135769.306748 0.002069 0.000091<br>
</div>
<div>- Â  ReqAcct Â  Â  Â  Â 112 0 112 299 0 299<br>
</div>
<div>- Â  End Â  Â  Â  Â  Â  Â <br>
</div>
<div>** Â << BeReq Â  Â >> 32773 Â  Â  <br>
</div>
<div>-- Â Begin Â  Â  Â  Â  Â bereq 32772 fetch<br>
</div>
<div>-- Â VCL_use Â  Â  Â  Â boot<br>
</div>
<div>-- Â Timestamp Â  Â  Â Start: 1576135769.304834 0.000000 0.000000<br>
</div>
<div>-- Â BereqMethod Â  Â HEAD<br>
</div>
<div>-- Â BereqURL Â  Â  Â  /Naserfeiz.mp4<br>
</div>
<div>-- Â BereqProtocol Â HTTP/1.1<br>
</div>
<div>-- Â BereqHeader Â  Â Host: <a href="http://192.168.200.12:8080" target="_blank">192.168.200.12:8080</a><br>
</div>
<div>-- Â BereqHeader Â  Â User-Agent: curl/7.47.0<br>
</div>
<div>-- Â BereqHeader Â  Â Accept: */*<br>
</div>
<div>-- Â BereqHeader Â  Â newtrack: yes<br>
</div>
<div>-- Â BereqHeader Â  Â X-Forwarded-For: 192.168.200.12<br>
</div>
<div>-- Â BereqMethod Â  Â GET<br>
</div>
<div>-- Â BereqHeader Â  Â Accept-Encoding: gzip<br>
</div>
<div>-- Â BereqHeader Â  Â X-Varnish: 32773<br>
</div>
<div>-- Â VCL_call Â  Â  Â  BACKEND_FETCH<br>
</div>
<div>-- Â VCL_return Â  Â  fetch<br>
</div>
<div>-- Â BackendOpen Â  Â 27 boot.swift_proxy_1 192.168.200.11 8080 192.168.200.12 6846<br>
</div>
<div>-- Â BackendStart Â  192.168.200.11 8080<br>
</div>
<div>-- Â Timestamp Â  Â  Â Bereq: 1576135769.304993 0.000160 0.000160<br>
</div>
<div>-- Â Timestamp Â  Â  Â Beresp: 1576135769.306170 0.001336 0.001176<br>
</div>
<div>-- Â BerespProtocol HTTP/1.1<br>
</div>
<div>-- Â BerespStatus Â  200<br>
</div>
<div>-- Â BerespReason Â  OK<br>
</div>
<div>-- Â BerespHeader Â  Server: nginx<br>
</div>
<div>-- Â BerespHeader Â  Date: Thu, 12 Dec 2019 07:29:58 GMT<br>
</div>
<div>-- Â BerespHeader Â  Content-Type: text/plain<br>
</div>
<div>-- Â BerespHeader Â  Content-Length: 23521499<br>
</div>
<div>-- Â BerespHeader Â  Last-Modified: Sun, 19 Nov 2000 08:52:00 GMT<br>
</div>
<div>-- Â BerespHeader Â  Connection: keep-alive<br>
</div>
<div>-- Â BerespHeader Â  ETag: "3a1794b0-166e8db"<br>
</div>
<div>-- Â BerespHeader Â  Accept-Ranges: bytes<br>
</div>
<div>-- Â TTL Â  Â  Â  Â  Â  Â RFC 120 10 0 1576135769 1576135769 1576135798 0 0 cacheable<br>
</div>
<div>-- Â VCL_call Â  Â  Â  BACKEND_RESPONSE<br>
</div>
<div>-- Â TTL Â  Â  Â  Â  Â  Â VCL 86400 10 0 1576135769 cacheable<br>
</div>
<div>-- Â VCL_return Â  Â  deliver<br>
</div>
<div>-- Â Storage Â  Â  Â  Â file s0<br>
</div>
<div>-- Â Fetch_Body Â  Â  3 length stream<br>
</div>
<div>-- Â BackendReuse Â  27 boot.swift_proxy_1<br>
</div>
<div>-- Â Timestamp Â  Â  Â BerespBody: 1576135769.645490 0.340657 0.339321<br>
</div>
<div>-- Â Length Â  Â  Â  Â  23521499<br>
</div>
<div>-- Â BereqAcct Â  Â  Â 185 0 185 241 23521499 23521740<br>
</div>
<div>-- Â End Â  Â  Â  Â  Â  Â <br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>########<br>
</div>
<div><br>
</div>
<div>STEP TWO:<br>
</div>
<div>First i restart varnish file and varnishlog then:<br>
</div>
<div>I add another varnish (with ram backend) in fornt of the varnish file and then i ask the url again in varnish ram (because it is my frontend server and users can access media though this server):<br>
</div>
<div><br>
</div>
<div>varnish-ram$ curl -I <a href="http://192.168.200.13/Naserfeiz.mp4" target="_blank">http://192.168.200.13/Naserfeiz.mp4</a> -H "newtrack: yes"<br>
</div>
<div>HTTP/1.1 200 OK<br>
</div>
<div>Server: nginx<br>
</div>
<div>Date: Thu, 12 Dec 2019 07:33:05 GMT<br>
</div>
<div>Content-Type: text/plain<br>
</div>
<div>Content-Length: 23521499<br>
</div>
<div>Last-Modified: Sun, 19 Nov 2000 08:52:00 GMT<br>
</div>
<div>ETag: "3a1794b0-166e8db"<br>
</div>
<div>X-Varnish: 2<br>
</div>
<div>Via: 1.1 varnish (Varnish/6.0)<br>
</div>
<div>X-Varnish: 2<br>
</div>
<div>Age: 0<br>
</div>
<div>Via: 1.1 varnish-v4<br>
</div>
<div>Accept-Ranges: bytes<br>
</div>
<div>Connection: keep-alive<br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>First varnish file cached the url and then Varnish ram fetched the object from varnish file and cached it , then i purged that url in varnish ram and it purged successfuly and it exactly removed from cached:<br>
</div>
<div><br>
</div>
<div>varnish-ram:~$ curl -v -k -X PURGE <a href="http://192.168.200.13/Naserfeiz.mp4" target="_blank">http://192.168.200.13/Naserfeiz.mp4</a> -o /dev/null -H "newtrack: yes"<br>
</div>
<div>* Â  Trying 192.168.200.13...<br>
</div>
<div>  % Total Â  Â % Received % Xferd Â Average Speed Â  Time Â  Â Time Â  Â  Time Â Current<br>
</div>
<div>  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â Dload Â Upload Â  Total Â  Spent Â  Â Left Â Speed<br>
</div>
<div>  0 Â  Â  0 Â  Â 0 Â  Â  0 Â  Â 0 Â  Â  0 Â  Â  Â 0 Â  Â  Â 0 --:--:-- --:--:-- --:--:-- Â  Â  0* Connected to 192.168.200.13 (192.168.200.13) port 80 (#0)<br>
</div>
<div>> PURGE /Naserfeiz.mp4 HTTP/1.1<br>
</div>
<div>> Host: 192.168.200.13<br>
</div>
<div>> User-Agent: curl/7.47.0<br>
</div>
<div>> Accept: */*<br>
</div>
<div>> newtrack: yes<br>
</div>
<div>> <br>
</div>
<div>< HTTP/1.1 200 Purged<br>
</div>
<div>< Date: Thu, 12 Dec 2019 07:33:46 GMT<br>
</div>
<div>< Server: Varnish<br>
</div>
<div>< X-Varnish: 32770<br>
</div>
<div>< Content-Type: text/html; charset=utf-8<br>
</div>
<div>< Retry-After: 5<br>
</div>
<div>< Content-Length: 240<br>
</div>
<div>< Accept-Ranges: bytes<br>
</div>
<div>< Connection: keep-alive<br>
</div>
<div>< <br>
</div>
<div>{ [240 bytes data]<br>
</div>
<div>100 Â  240 Â 100 Â  240 Â  Â 0 Â  Â  0 Â 73846 Â  Â  Â 0 --:--:-- --:--:-- --:--:-- Â 117k<br>
</div>
<div>* Connection #0 to host 192.168.200.13 left intact<br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>Then i purged the url in varnish file it shows "200 purged" but it still exist in varnish file!!!!!!:<br>
</div>
<div><br>
</div>
<div>varnish-file$ curl -v -k -X PURGE <a href="http://192.168.200.12:8080/Naserfeiz.mp4" target="_blank">http://192.168.200.12:8080/Naserfeiz.mp4</a> -o /dev/null -H "newtrack: yes"<br>
</div>
<div>* Â  Trying 192.168.200.12...<br>
</div>
<div>  % Total Â  Â % Received % Xferd Â Average Speed Â  Time Â  Â Time Â  Â  Time Â Current<br>
</div>
<div>  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â  Â Dload Â Upload Â  Total Â  Spent Â  Â Left Â Speed<br>
</div>
<div>  0 Â  Â  0 Â  Â 0 Â  Â  0 Â  Â 0 Â  Â  0 Â  Â  Â 0 Â  Â  Â 0 --:--:-- --:--:-- --:--:-- Â  Â  0* Connected to 192.168.200.12 (192.168.200.12) port 8080 (#0)<br>
</div>
<div>> PURGE /Naserfeiz.mp4 HTTP/1.1<br>
</div>
<div>> Host: <a href="http://192.168.200.12:8080" target="_blank">192.168.200.12:8080</a><br>
</div>
<div>> User-Agent: curl/7.47.0<br>
</div>
<div>> Accept: */*<br>
</div>
<div>> newtrack: yes<br>
</div>
<div>> <br>
</div>
<div>< HTTP/1.1 200 Purged<br>
</div>
<div>< Date: Thu, 12 Dec 2019 07:33:39 GMT<br>
</div>
<div>< Server: Varnish<br>
</div>
<div>< X-Varnish: 5<br>
</div>
<div>< Content-Type: text/html; charset=utf-8<br>
</div>
<div>< Retry-After: 5<br>
</div>
<div>< Content-Length: 236<br>
</div>
<div>< Accept-Ranges: bytes<br>
</div>
<div>< Connection: keep-alive<br>
</div>
<div>< <br>
</div>
<div>{ [236 bytes data]<br>
</div>
<div>100 Â  236 Â 100 Â  236 Â  Â 0 Â  Â  0 Â  110k Â  Â  Â 0 --:--:-- --:--:-- --:--:-- Â 230k<br>
</div>
<div>* Connection #0 to host 192.168.200.12 left intact<br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>This is varnishlog resault in varnish file:<br>
</div>
<div><br>
</div>
<div>varnish-file:~$ sudo varnishlog -d Â -g request<br>
</div>
<div>* Â  << Request Â >> 2 Â  Â  Â  Â  <br>
</div>
<div>- Â  Begin Â  Â  Â  Â  Â req 1 rxreq<br>
</div>
<div>- Â  Timestamp Â  Â  Â Start: 1576135956.460768 0.000000 0.000000<br>
</div>
<div>- Â  Timestamp Â  Â  Â Req: 1576135956.460768 0.000000 0.000000<br>
</div>
<div>- Â  ReqStart Â  Â  Â  192.168.200.13 22300 a0<br>
</div>
<div>- Â  ReqMethod Â  Â  Â GET<br>
</div>
<div>- Â  ReqURL Â  Â  Â  Â  /Naserfeiz.mp4<br>
</div>
<div>- Â  ReqProtocol Â  Â HTTP/1.1<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Host: 192.168.200.13<br>
</div>
<div>- Â  ReqHeader Â  Â  Â User-Agent: curl/7.47.0<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Accept: */*<br>
</div>
<div>- Â  ReqHeader Â  Â  Â newtrack: yes<br>
</div>
<div>- Â  ReqHeader Â  Â  Â X-Forwarded-For: 192.168.200.13<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Accept-Encoding: gzip<br>
</div>
<div>- Â  ReqHeader Â  Â  Â X-Varnish: 3<br>
</div>
<div>- Â  ReqUnset Â  Â  Â  X-Forwarded-For: 192.168.200.13<br>
</div>
<div>- Â  ReqHeader Â  Â  Â X-Forwarded-For: 192.168.200.13, 192.168.200.13<br>
</div>
<div>- Â  VCL_call Â  Â  Â  RECV<br>
</div>
<div>- Â  VCL_return Â  Â  hash<br>
</div>
<div>- Â  VCL_call Â  Â  Â  HASH<br>
</div>
<div>- Â  VCL_return Â  Â  lookup<br>
</div>
<div>- Â  VCL_call Â  Â  Â  MISS<br>
</div>
<div>- Â  VCL_return Â  Â  fetch<br>
</div>
<div>- Â  Link Â  Â  Â  Â  Â  bereq 3 fetch<br>
</div>
<div>- Â  Timestamp Â  Â  Â Fetch: 1576135956.463065 0.002297 0.002297<br>
</div>
<div>- Â  RespProtocol Â  HTTP/1.1<br>
</div>
<div>- Â  RespStatus Â  Â  200<br>
</div>
<div>- Â  RespReason Â  Â  OK<br>
</div>
<div>- Â  RespHeader Â  Â  Server: nginx<br>
</div>
<div>- Â  RespHeader Â  Â  Date: Thu, 12 Dec 2019 07:33:05 GMT<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Type: text/plain<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Length: 23521499<br>
</div>
<div>- Â  RespHeader Â  Â  Last-Modified: Sun, 19 Nov 2000 08:52:00 GMT<br>
</div>
<div>- Â  RespHeader Â  Â  ETag: "3a1794b0-166e8db"<br>
</div>
<div>- Â  RespHeader Â  Â  X-Varnish: 2<br>
</div>
<div>- Â  RespHeader Â  Â  Age: 0<br>
</div>
<div>- Â  RespHeader Â  Â  Via: 1.1 varnish (Varnish/6.0)<br>
</div>
<div>- Â  VCL_call Â  Â  Â  DELIVER<br>
</div>
<div>- Â  VCL_return Â  Â  deliver<br>
</div>
<div>- Â  Timestamp Â  Â  Â Process: 1576135956.463114 0.002346 0.000049<br>
</div>
<div>- Â  RespHeader Â  Â  Accept-Ranges: bytes<br>
</div>
<div>- Â  RespHeader Â  Â  Connection: keep-alive<br>
</div>
<div>- Â  Timestamp Â  Â  Â Resp: 1576135956.758920 0.298152 0.295806<br>
</div>
<div>- Â  ReqAcct Â  Â  Â  Â 176 0 176 295 23521499 23521794<br>
</div>
<div>- Â  End Â  Â  Â  Â  Â  Â <br>
</div>
<div>** Â << BeReq Â  Â >> 3 Â  Â  Â  Â  <br>
</div>
<div>-- Â Begin Â  Â  Â  Â  Â bereq 2 fetch<br>
</div>
<div>-- Â VCL_use Â  Â  Â  Â boot<br>
</div>
<div>-- Â Timestamp Â  Â  Â Start: 1576135956.461099 0.000000 0.000000<br>
</div>
<div>-- Â BereqMethod Â  Â GET<br>
</div>
<div>-- Â BereqURL Â  Â  Â  /Naserfeiz.mp4<br>
</div>
<div>-- Â BereqProtocol Â HTTP/1.1<br>
</div>
<div>-- Â BereqHeader Â  Â Host: 192.168.200.13<br>
</div>
<div>-- Â BereqHeader Â  Â User-Agent: curl/7.47.0<br>
</div>
<div>-- Â BereqHeader Â  Â Accept: */*<br>
</div>
<div>-- Â BereqHeader Â  Â newtrack: yes<br>
</div>
<div>-- Â BereqHeader Â  Â Accept-Encoding: gzip<br>
</div>
<div>-- Â BereqHeader Â  Â X-Varnish: 3<br>
</div>
<div>-- Â BereqHeader Â  Â X-Forwarded-For: 192.168.200.13, 192.168.200.13<br>
</div>
<div>-- Â BereqHeader Â  Â X-Varnish: 3<br>
</div>
<div>-- Â VCL_call Â  Â  Â  BACKEND_FETCH<br>
</div>
<div>-- Â VCL_return Â  Â  fetch<br>
</div>
<div>-- Â BackendOpen Â  Â 27 boot.swift_proxy_1 192.168.200.11 8080 192.168.200.12 6860<br>
</div>
<div>-- Â BackendStart Â  192.168.200.11 8080<br>
</div>
<div>-- Â Timestamp Â  Â  Â Bereq: 1576135956.461955 0.000856 0.000856<br>
</div>
<div>-- Â Timestamp Â  Â  Â Beresp: 1576135956.462607 0.001508 0.000652<br>
</div>
<div>-- Â BerespProtocol HTTP/1.1<br>
</div>
<div>-- Â BerespStatus Â  200<br>
</div>
<div>-- Â BerespReason Â  OK<br>
</div>
<div>-- Â BerespHeader Â  Server: nginx<br>
</div>
<div>-- Â BerespHeader Â  Date: Thu, 12 Dec 2019 07:33:05 GMT<br>
</div>
<div>-- Â BerespHeader Â  Content-Type: text/plain<br>
</div>
<div>-- Â BerespHeader Â  Content-Length: 23521499<br>
</div>
<div>-- Â BerespHeader Â  Last-Modified: Sun, 19 Nov 2000 08:52:00 GMT<br>
</div>
<div>-- Â BerespHeader Â  Connection: keep-alive<br>
</div>
<div>-- Â BerespHeader Â  ETag: "3a1794b0-166e8db"<br>
</div>
<div>-- Â BerespHeader Â  Accept-Ranges: bytes<br>
</div>
<div>-- Â TTL Â  Â  Â  Â  Â  Â RFC 120 10 0 1576135956 1576135956 1576135985 0 0 cacheable<br>
</div>
<div>-- Â VCL_call Â  Â  Â  BACKEND_RESPONSE<br>
</div>
<div>-- Â TTL Â  Â  Â  Â  Â  Â VCL 86400 10 0 1576135956 cacheable<br>
</div>
<div>-- Â VCL_return Â  Â  deliver<br>
</div>
<div>-- Â Storage Â  Â  Â  Â file s0<br>
</div>
<div>-- Â Fetch_Body Â  Â  3 length stream<br>
</div>
<div>-- Â BackendReuse Â  27 boot.swift_proxy_1<br>
</div>
<div>-- Â Timestamp Â  Â  Â BerespBody: 1576135956.758956 0.297858 0.296349<br>
</div>
<div>-- Â Length Â  Â  Â  Â  23521499<br>
</div>
<div>-- Â BereqAcct Â  Â  Â 206 0 206 241 23521499 23521740<br>
</div>
<div>-- Â End Â  Â  Â  Â  Â  Â <br>
</div>
<div><br>
</div>
<div>* Â  << Request Â >> 5 Â  Â  Â  Â  <br>
</div>
<div>- Â  Begin Â  Â  Â  Â  Â req 4 rxreq<br>
</div>
<div>- Â  Timestamp Â  Â  Â Start: 1576136019.230666 0.000000 0.000000<br>
</div>
<div>- Â  Timestamp Â  Â  Â Req: 1576136019.230666 0.000000 0.000000<br>
</div>
<div>- Â  ReqStart Â  Â  Â  192.168.200.12 5452 a0<br>
</div>
<div>- Â  ReqMethod Â  Â  Â PURGE<br>
</div>
<div>- Â  ReqURL Â  Â  Â  Â  /Naserfeiz.mp4<br>
</div>
<div>- Â  ReqProtocol Â  Â HTTP/1.1<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Host: <a href="http://192.168.200.12:8080" target="_blank">192.168.200.12:8080</a><br>
</div>
<div>- Â  ReqHeader Â  Â  Â User-Agent: curl/7.47.0<br>
</div>
<div>- Â  ReqHeader Â  Â  Â Accept: */*<br>
</div>
<div>- Â  ReqHeader Â  Â  Â newtrack: yes<br>
</div>
<div>- Â  ReqHeader Â  Â  Â X-Forwarded-For: 192.168.200.12<br>
</div>
<div>- Â  VCL_call Â  Â  Â  RECV<br>
</div>
<div>- Â  VCL_return Â  Â  purge<br>
</div>
<div>- Â  VCL_call Â  Â  Â  HASH<br>
</div>
<div>- Â  VCL_return Â  Â  lookup<br>
</div>
<div>- Â  VCL_call Â  Â  Â  PURGE<br>
</div>
<div>- Â  VCL_return Â  Â  synth<br>
</div>
<div>- Â  Timestamp Â  Â  Â Process: 1576136019.230863 0.000198 0.000198<br>
</div>
<div>- Â  RespHeader Â  Â  Date: Thu, 12 Dec 2019 07:33:39 GMT<br>
</div>
<div>- Â  RespHeader Â  Â  Server: Varnish<br>
</div>
<div>- Â  RespHeader Â  Â  X-Varnish: 5<br>
</div>
<div>- Â  RespProtocol Â  HTTP/1.1<br>
</div>
<div>- Â  RespStatus Â  Â  200<br>
</div>
<div>- Â  RespReason Â  Â  OK<br>
</div>
<div>- Â  RespReason Â  Â  Purged<br>
</div>
<div>- Â  VCL_call Â  Â  Â  SYNTH<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Type: text/html; charset=utf-8<br>
</div>
<div>- Â  RespHeader Â  Â  Retry-After: 5<br>
</div>
<div>- Â  VCL_return Â  Â  deliver<br>
</div>
<div>- Â  RespHeader Â  Â  Content-Length: 236<br>
</div>
<div>- Â  Storage Â  Â  Â  Â malloc Transient<br>
</div>
<div>- Â  RespHeader Â  Â  Accept-Ranges: bytes<br>
</div>
<div>- Â  RespHeader Â  Â  Connection: keep-alive<br>
</div>
<div>- Â  Timestamp Â  Â  Â Resp: 1576136019.231138 0.000473 0.000275<br>
</div>
<div>- Â  ReqAcct Â  Â  Â  Â 113 0 113 214 236 450<br>
</div>
<div>- Â  End Â  Â  Â  Â  Â  Â <br>
</div>
<div><br>
</div>
<div>########<br>
</div>
<div>PLEASE test this scenario for yourself and you can see that i do correct and the object wont remove from varnish-file<br>
</div>
<div>Please do this scenario for yourself<br>
</div>
<span></span><br>
<div id="m_1231143223751743120m_-3046864990878589310x_appendonsend"></div>
<hr style="display:inline-block;width:98%">
<div id="m_1231143223751743120m_-3046864990878589310x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> Guillaume Quintard <<a href="mailto:guillaume@varnish-software.com" target="_blank">guillaume@varnish-software.com</a>><br>
<b>Sent:</b> Wednesday, December 11, 2019 9:44 AM<br>
<b>To:</b> hamidreza hosseini <<a href="mailto:hrhosseini@hotmail.com" target="_blank">hrhosseini@hotmail.com</a>><br>
<b>Cc:</b> <a href="mailto:varnish-misc@varnish-cache.org" target="_blank">varnish-misc@varnish-cache.org</a> <<a href="mailto:varnish-misc@varnish-cache.org" target="_blank">varnish-misc@varnish-cache.org</a>><br>
<b>Subject:</b> Re: Varnish doesnt purge</font>
<div> </div>
</div>
<div>
<div dir="ltr">Yes it does, we have already proved it./
<div><br>
</div>
<div>Each instance purges and will refetch the object for its respective backend. I explained how to test: start with the origin, change the data and check that you actually get the new object. Then add a varnish layer, purge, check, repeat.</div>
<div><br>
</div>
<div>You are testing everything at once and are unable to isolate the issue because you refuse to take things step by step, and spamming won't change that.</div>
<div><br>
</div>
<div>I'm sorry but until you have tested each layer individually and identified the one that fails, I won't be able to help.</div>
<div><br clear="all">
<div>
<div dir="ltr">
<div dir="ltr">
<div>-- <br>
</div>
Guillaume Quintard<br>
</div>
</div>
</div>
<br>
</div>
</div>
<br>
<div>
<div dir="ltr">On Wed, Dec 11, 2019 at 3:08 PM hamidreza hosseini <<a href="mailto:hrhosseini@hotmail.com" target="_blank">hrhosseini@hotmail.com</a>> wrote:<br>
</div>
<blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="ltr">
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<div style="color:black;font-size:12pt;font-family:Calibri,Arial,Helvetica,sans-serif">
Hi,</div>
<div style="color:black;font-size:12pt;font-family:Calibri,Arial,Helvetica,sans-serif">
please help me to solve this problem, this is the link that i explaine my question completely:</div>
<div style="color:black;font-size:12pt;font-family:Calibri,Arial,Helvetica,sans-serif">
<a href="https://varnish-cache.org/lists/pipermail/varnish-misc/2019-December/026754.html" rel="noopener noreferrer" target="_blank">https://varnish-cache.org/lists/pipermail/varnish-misc/2019-December/026754.html</a></div>
<br>
</div>
</div>
_______________________________________________<br>
varnish-misc mailing list<br>
<a href="mailto:varnish-misc@varnish-cache.org" target="_blank">varnish-misc@varnish-cache.org</a><br>
<a href="https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc" rel="noreferrer" target="_blank">https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc</a><br>
</blockquote>
</div>
</div>
</div>
</div>

_______________________________________________<br>
varnish-misc mailing list<br>
<a href="mailto:varnish-misc@varnish-cache.org" target="_blank">varnish-misc@varnish-cache.org</a><br>
<a href="https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc" rel="noreferrer" target="_blank">https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc</a><br>
</blockquote></div></div>
</div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature">Sent from my iPhone</div>