Kıvrılma ile web sayfası yanıtı için zaman aşımını ayarlama


15

Web sayfasının çalışıp çalışmadığını izlemek için bir araç kullanıyorum.

Araç curl, çıktıyı almak için dahili olarak komutu kullanır .

Ancak, bir web sayfasının yanıt vermesi daha uzun sürerse, bir TIMEOUThatayla sonuçlanır . Aracın zaman aşımını artırabilmem mümkün değil.

Bir web sayfasından yanıt için zaman aşımı süresini ayarlamanın / değiştirmenin bir yolu var mı?

Değiştirilebilecek herhangi bir değişken var mı?

Yanıtlar:


23

-mSeçeneği kullanabilirsiniz :

-m, --max-time <seconds>
              Maximum time in seconds that you allow the  whole  operation  to
              take.   This is useful for preventing your batch jobs from hang‐
              ing for hours due to slow networks or  links  going  down.   See
              also the --connect-timeout option.

              If this option is used several times, the last one will be used.

Buna bağlanma süresi de dahildir, ayrı olarak belirtmek istiyorsanız --connect-timeoutseçeneği kullanın.


4

Normalde bunu curlçağrıldığında komut satırında bir seçenekle yaparsınız . Ancak bunu değiştiremeyeceğiniz için başka bir yol daha var - için bir yapılandırma dosyası oluşturabilirsiniz curl. Unix'te, curlönce curl adlı kullanıcının ana dizininde adlı dosyayı arar .curlrc. Bu dosyayı satırla oluşturun

connect-timeout = 10

zaman aşımını 10 saniyeye düşürmek için. Veya aşağıdaki seçenekle tüm işlem için bir maksimum süre ayarlayabilirsiniz max-time:

max-time = 10

Bu harika bir fikir ... ama bunun için herhangi bir özel env değişkeni veya FD sayısını artırmak için arka uçtan ulimit gibi ayarlanabilecek bir şey olup olmadığını merak ediyordum?
user80040

Man sayfasında böyle bir şey bulamıyorum.
Jenny D

4

curl "bağlantı zaman aşımı" seçeneğine sahiptir:

--connect-timeout <seconds>

"Aracınız" bir komut dosyasıysa, bunu orada manuel olarak düzenleyebilirsiniz. Ancak /unix//a/148926/77959 daha da iyidir - curl-config dosyasını düzenleyin!


Ya .. yapılandırma eklemek oldukça parlak bir fikir ... ama ben de, bunun için herhangi bir belirli env değişkeni veya FD sayısını artırmak için arka uçtan ulimit gibi ayarlanabilecek bir şey olup olmadığını merak ediyordum?
user80040

@ user80040 Hayır, yok. “Arka uç” yoktur, zaman aşımı bir tür sistem sınırlaması değildir. Curl web isteğinde bulunur ve yapılandırmasına bağlı olarak zaman aşımına karar verir.
Gilles 'SO- kötü olmayı kes'

0

Gönderen CurlEğer bu seçeneği kullanabilirsiniz --connect-timeout: saniyede maksimum zaman sunucuya bağlantı almaya izin verdiğini. Bu sadece bağlantı aşamasını sınırlar, bağlandıktan sonra curlbu seçenek artık kullanılmaz. Ayrıca bkz. --max-timeSeçenek.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.