Squid ਰਾਹੀਂ ਡਾਊਨਲੋਡ ਮੁੜ ਜਾਰੀ ਕਰੋ
ਫਾਈਲ ਜਾਰੀ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ Range ਜਵਾਬ ਅਤੇ ਆਬਜੈਕਟ ਦੀ ਇੱਕਸਾਰਤਾ ਜਾਂਚੋ। Squid ਦੀ ਪ੍ਰੀਫੈਚ ਨੀਤੀ ਨੂੰ ਮੁੱਢਲੀ Range ਸਹਾਇਤਾ ਤੋਂ ਵੱਖਰਾ ਸਮਝੋ।
download.part ਹੁਣ ਮੰਗਣ ਵਾਲੇ ਆਬਜੈਕਟ ਦੀ ਉਸੇ ਪੇਸ਼ਕਾਰੀ ਦਾ ਹਿੱਸਾ ਹੋਵੇ ਤਾਂ ਹੀ ਡਾਊਨਲੋਡ ਜਾਰੀ ਕਰੋ। ਸਿਰਫ਼ ਫਾਈਲ ਨਾਮ ਇਹ ਸਾਬਤ ਨਹੀਂ ਕਰਦਾ: ਮੂਲ ਸਰਵਰ ਪਹਿਲੀ ਕੋਸ਼ਿਸ਼ ਮਗਰੋਂ ਸਮੱਗਰੀ ਬਦਲ ਚੁੱਕਾ ਹੋ ਸਕਦਾ ਹੈ।
curl --proxy http://proxy.example:3128 --noproxy '' --connect-timeout 5 --max-time 60 -C - --output download.part http://files.example/test.binਦੋਵੇਂ ਐਂਡਪੁਆਇੰਟ ਉਹਨਾਂ ਸੇਵਾਵਾਂ ਨਾਲ ਬਦਲੋ ਜਿਨ੍ਹਾਂ ਦੀ ਵਰਤੋਂ ਦਾ ਹੱਕ ਹੈ। ਜਿੱਥੇ ਜਨਤਕ ਪ੍ਰਾਕਸੀ ਮਨਜ਼ੂਰ ਹੋਵੇ ਉੱਥੇ ਜਨਤਕ ਫਾਈਲ ਦੀ ਤੁਲਨਾ ਲਈ HTTP ਪ੍ਰਾਕਸੀ ਸੂਚੀ ਵਿੱਚੋਂ HTTP ਐਂਡਪੁਆਇੰਟ ਚੁਣੋ। -C - ਮੌਜੂਦਾ ਫਾਈਲ ਦੇ ਆਕਾਰ ਨੂੰ ਜਾਰੀ ਰੱਖਣ ਦਾ ਬਿੰਦੂ ਬਣਾਉਂਦਾ ਹੈ। ਵਾਪਸ ਆਈ ਕਿਸੇ ਵੀ ਬਾਡੀ ਨੂੰ ਬਚੇ ਬਾਈਟ ਨਾ ਮੰਨ ਕੇ ਮੰਜ਼ਿਲ ਦਾ ਜਵਾਬ ਵੇਖੋ:
| ਜਵਾਬ | ਅਰਥ |
|---|---|
| Content-Range ਨਾਲ 206 | ਵੇਖੋ ਵਾਪਸ ਆਈ ਰੇਂਜ ਉਮੀਦ ਵਾਲਾ ਅਗਲਾ ਹਿੱਸਾ ਹੈ। |
| 200 | ਸਰਵਰ ਨੇ ਸ਼ਾਇਦ Range ਅਣਡਿੱਠੀ ਕਰਕੇ ਪੂਰੀ ਪੇਸ਼ਕਾਰੀ ਭੇਜੀ ਹੋਵੇ। |
| 416 | ਮੰਗੀ ਰੇਂਜ ਪੂਰੀ ਨਹੀਂ ਹੋ ਸਕਦੀ; ਗਲਤੀ ਦਾ ਪੰਨਾ ਫਾਈਲ ਨਾਲ ਨਾ ਜੋੜੋ। |
ਵੈਲੀਡੇਟਰ ਅਤੇ If-Range ਬਦਲਦੇ ਸਰੋਤ ਦੇ ਵੱਖਰੇ ਵਰਜ਼ਨ ਜੋੜਨ ਤੋਂ ਬਚਾ ਸਕਦੇ ਹਨ। ਪੂਰੀ ਫਾਈਲ ਉੱਤੇ ਭਰੋਸੇ ਤੋਂ ਪਹਿਲਾਂ ਐਪ ਦੇ ਪੇਸ਼ਕਾਰੀ ਨਿਯਮ ਮੰਨੋ।
Squid 6.13 ਦਾ range_offset_limit ਤੈਅ ਕਰਦਾ ਹੈ ਕਿ ਕੈਸ਼ ਲਈ ਆਬਜੈਕਟ ਕਦੋਂ ਸ਼ੁਰੂ ਤੋਂ ਲੈਣਾ ਹੈ, ਇਹ ਨਹੀਂ ਕਿ ਕਲਾਇੰਟ ਰੇਂਜ ਮੰਗ ਸਕਦਾ ਹੈ ਜਾਂ ਨਹੀਂ:
range_offset_limit 0ਜ਼ੀਰੋ ਹੱਦ ਸਿਰਫ਼ ਕੈਸ਼ ਭਰਨ ਲਈ ਸ਼ੁਰੂ ਦਾ ਵਾਧੂ ਹਿੱਸਾ ਲੈਣ ਤੋਂ ਬਚਾਉਂਦੀ ਹੈ। ਆਬਜੈਕਟ ਕੈਸ਼ ਕੀਤੇ ਬਿਨਾਂ ਲਾਭਕਾਰੀ ਰੇਂਜ ਭੇਜਣਾ ਵੀ ਸਫਲ ਹੋ ਸਕਦਾ ਹੈ। ਆਮ HTTPS CONNECT ਵਿੱਚ Range ਲੈਣ-ਦੇਣ ਮੰਜ਼ਿਲ ਦੇ TLS ਅੰਦਰ ਹੁੰਦਾ ਹੈ; ਉਹ ਜਵਾਬ ਪੜ੍ਹੋ, Squid ਦੀ ਦਿਸਦੀ ਆਬਜੈਕਟ ਕੈਸ਼ ਨੀਤੀ ਨੂੰ ਅੰਦਰਲੀ ਬੇਨਤੀ ਦਾ ਕੰਟਰੋਲ ਨਾ ਮੰਨੋ।