cURL
cURL, çeşitli protokoller kullanarak, veri aktarımı sağlamak için kütüphane ve komut satırı aracı sunan bir bilgisayar yazılımı projesidir. cURL projesi, libcurl ve cURL olarak ikiye ayrılır. İlk olarak 1997 yılında yayınlanmıştır. İsminde bulunan "c" İngilizce'deki client (istemci) kelimesinden gelmektedir.[3]
Bir curl -O örnek kullanımı | |
Orijinal yazar(lar) | Daniel Stenberg[1] |
---|---|
Geliştirici(ler) | cURL projesinin katkıcıları |
İlk yayınlanma | 1997)[2] |
Geliştirme durumu | Aktif |
Programlama dili | C |
İşletim sistemi | Çapraz platform |
Tür | FTP istemcisi / HTTP istemcisi |
Lisans | Özgür Yazılım: MIT/X derivate license |
Resmî sitesi | curl.haxx.se |
Kod deposu |
libcurl
libcurl, FTP, FTPS, Gopher, HTTP, HTTPS, SCP, SFTP, TFTP, Telnet, DICT, LDAP, LDAPS, IMAP, POP3, SMTP ve RTSP protokollerini destekleyen, istemci taraflı ücretsiz bir URL transfer kütüphanesidir.
libcurl kütüphanesi taşınabilirdir. Solaris, NetBSD, FreeBSD, OpenBSD, Darwin, HP-UX, IRIX, AIX, Tru64, Linux, UnixWare, HURD, Windows, Symbian, AmigaOS, OS/2, BeOS, OS X, iOS, Android, Ultrix, QNX Neutrino, BlackBerry Tablet OS, BlackBerry 10,[4] OpenVMS, RISC OS, NetWare ve DOS gibi birçok platformda çalışabilir.
libcurl kütüphanesi ücretsizdir ve IPv6 uyumludur. C/C++, Java, PHP ve Python dahil, 40'tan fazla programlama dilini destekler.
cURL
URL sözdizimini kullanarak dosya almak ya da göndermek için bir komut satırı aracıdır.
cURL, libcurl kütüphanesini kullanmaktadır. HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, LDAP, DAP, DICT, TELNET, FILE, IMAP, POP3, SMTP ve RTSP gibi yaygın internet protokollerini destekler.
cURL, HTTPS gibi güvenli protokoller belirtildiğinde varsayılan olarak HTTPS ve SSL sertifika doğrulaması yapar. cURL uzak bir sunucuya HTTPS ile bağlandığında, ilk olarak uzak sunucunun sertifikasını elde eder ve geçerli olup olmadığını doğrular.
cURL, eğer uzak sunucu kendinden imzalı (self-signed) bir sertifikaya sahipse ya da sunucu sertifikası geçerli bir CA (certificate authority) tarafından imzalanmamışsa, hata mesajı dönecektir. Bu yüzden sertifika doğrulamasını es geçmek için -k
ya da --insecure
seçenekleri kullanılabilir. Alternatif olarak, uzak sunucu güvenilirse, uzak sunucunun sertifikası, CA sertifikalarının depolandığı dosyaya eklenebilir.
cURL komut satırı kullanım örnekleri
example.com anasayfasını getirmek için:
curl www.example.com
cURL varsayılan olarak çıktıyı, sistemin standart çıktısı (stdout) olarak verir. Bu yüzden yukarıdaki komut, www.example.com'un kaynak kodunu terminal penceresinde gösterir.
-o
parametresi ile çıktı, bir dosyaya yazılabilir:
curl -o example.html www.example.com
Burada, www.example.com'un kaynak kodu, example.html adındaki dosyada depolanacaktır. Çıktı alındığı sırada bir ilerleme çubuğunda çıktının ne kadarının indirildiği gösterilecektir.
-O
parametresi ile, indirilen dosya ile aynı adla bir dosya oluşturulur ve çıktı o dosyaya yazılır:
curl -O www.example.com/example.html
Eğer sunucu, bu dosyanın (example.html) başka bir adrese taşındığı yanıtını verirse (üstveride Location: olarak belirtilir), -L
parametresi kullanılır:
curl -OL www.example.com/example.html
cURL, uzak sunucuya HTTPS protokolü ile bağlanabilir (eğer CA sertifika dosyası bulunmuyorsa hata mesajı döner):
curl https://securesite.com/login.html
Bir CA sertifikası dosyası belirtmek için:
curl --cacert c:\temp\cacerts.crt https://securesite.com/login.html
Sertifika doğrulamasını es geçmek için:
curl --insecure https://self-signed-cert.com/login.html
cURL, proxy desteği, kullanıcı kimlik doğrulaması, FTP yüklemesi, HTTP post, SSL bağlantıları, çerezler, dosya transferi, Metalink ve çeşitli diğer özellikler sunmaktadır.
Ayrıca bakınız
Kaynakça
- Stenberg, Daniel (20 Mart 2015). "curl, 17 years old today". daniel.haxx.se. 6 Aralık 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Mart 2015.
- "cURL History Page". 23 Nisan 2012 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Haziran 2016.
- ""Origin of the name"". 27 Haziran 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Ekim 2018.
- "Open Source Components for the Native SDK for BlackBerry Tablet OS". 2 Nisan 2012 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Haziran 2016.
Dış bağlantılar
- Resmî site (İngilizce)
- cURL manual (İngilizce)
- Comparison of cURL vs other open source download tools (İngilizce)
- Comparison of cURL vs wget (İngilizce)