cURL

cURL
cURL
Curl-logo.svg
CURL downloading CURL screenshot.png
에서의 출력curl -O
원저작자대니얼 스텐버그[1]
개발자cURL 프로젝트 참여자
초기 릴리즈1996년; 26년 전(1996년)[2]
안정된 릴리스
7.84[3].0 / 2022년 6월 27일
저장소
기입처C
운영 체제
플랫폼크로스 플랫폼
유형FTP 클라이언트/HTTP 클라이언트
면허증.구부러지다[4][5]
웹 사이트curl.se Edit this at Wikidata

cURL(curl, /kɜːl/[6]로 발음)은 다양한 네트워크 프로토콜을 사용하여 데이터를 전송하기 위한 라이브러리(libcurl) 및 명령줄 도구(curl)를 제공하는 컴퓨터 소프트웨어 프로젝트입니다.이름은 "Client URL"[7]을 나타냅니다.

역사

cURL은 [8]1996년에 처음 출시되었습니다.원래 이름은 httpget 이었고 현재 [9][10]cURL 이름을 채택하기 전에 urlget 이 되었습니다.원저자 겸 리드 개발자는 스웨덴 개발자인 Daniel Stenberg로, 그는 IRC 사용자의 환율 [2]페치를 자동화하기 위해 cURL을 만들었습니다.

libcurl

libcurl은 무료 클라이언트 측 URL 전송 [11]라이브러리이며 쿠키, DICT, FTP, FTPS, Gopher, HTTP/1[12], HTTP POST, HTTP PUT, HTTP 프록시 터널링, HTTPS, IMAP, Kerberos, LDAP, MQTT, POP3, RTS지원합니다.라이브러리는 파일 URI 방식, SFTP, Telnet, TFTP, 파일 전송 재개, FTP 업로드, HTTP 폼 기반 업로드, HTTPS 증명서, LDAPS, 프록시 및 사용자 플러스 패스워드 [13]인증을 지원합니다.

libcurl 라이브러리는 포터블.AIX, AmigaOS, Android,[citation needed] BeOS, BlackBerry Tablet OS 및 BlackBerry 10,[14] OpenVMS, Darwin, DOS, FreeBSD, HP-UX, HURD, iOS, IRIX, Linux, MacSDB, Net비롯한 많은 플랫폼에서 동일하게 구축 및 작동합니다.

libcurl 라이브러리는 무료이며 스레드 세이프 및 IPv6 호환성이 있습니다.바인딩은 C/C++, Java, PHP [16]Python을 포함하여 50개 이상의 언어로 사용할 수 있습니다.

libcurl 라이브러리는 GnuTLS, mbed TLS, NSS, IBM i에서의 gskit, Windows에서의 SChannel, macOS 및 iOS에서의 Secure Transport, Boringsl, libressl, AmiSSL, wolfSSL, BearSSL [17]bustlslsl을 지원합니다.

cURL

cURL은 URL 구문을 사용하여 파일을 포함한 데이터를 가져오거나 보내기 위한 명령줄 도구입니다.cURL은 libcurl을 사용하기 때문에 libcurl이 [13]지원하는 모든 프로토콜을 지원합니다.

cURL은 HTTPS를 지원하며 HTTPS 등의 시큐어 프로토콜이 지정되어 있는 경우 기본적으로 SSL 증명서 검증을 수행합니다.cURL이 HTTPS 경유로 리모트서버에 접속하면 리모트서버 증명서를 취득한 후 리모트서버의 유효성을 CA 증명서 스토어와 대조하여 리모트서버의 유효성을 확인합니다.일부 cURL 패키지는 CA 증명서 스토어 파일에 번들되어 있습니다.CA 증명서 지정에는 다음과 같은 몇 가지 옵션이 있습니다.--capath--capath.--cacert 옵션을 사용하여 CA 인증서 저장소 파일의 위치를 지정할 수 있습니다.Windows 플랫폼에서 CA 증명서 파일이 지정되지 않은 경우 cURL은 다음 순서로 CA 증명서 파일 이름 "curl-ca-bundle.crt"를 검색합니다.

  1. cURL 프로그램이 있는 디렉토리.
  2. 현재의 작업 디렉토리.
  3. Windows 시스템 디렉토리.
  4. Windows 디렉토리
  5. %PATH% 환경변수에 [18]지정된 디렉토리입니다.

리모트 서버가 자기 서명 증명서를 사용하고 있는 경우 또는 리모트서버 증명서가 CA 증명서 파일에 기재되어 있는CA에 의해 서명되어 있지 않은 경우 cURL은 오류 메시지를 반환합니다.-k 또는 --certificate 옵션을 사용하여 증명서 검증을 건너뛸 수 있습니다.또는 리모트 서버를 신뢰할 수 있는 경우 리모트서버 CA 증명서를 CA 증명서 스토어 파일에 추가할 수 있습니다.

cURL을 기본적으로 사용하려면 명령줄에 curl을 입력하고 다음으로 출력 URL을 입력하여 가져옵니다.

$curl www.example.com

cURL 은 디폴트로 취득한 출력을 시스템에서 지정한 표준 출력(통상은 터미널 창)으로 표시합니다.따라서 위의 명령어를 실행하면 대부분의 시스템에서 터미널 창에 www.example.com 소스 코드가 표시됩니다.대신 -o 플래그를 사용하여 출력을 파일에 저장할 수 있습니다.

$curl - o example.http://www.example.com

도구의 동작을 변경하는 더 많은 옵션을 사용할 수 있습니다.

「 」를 참조해 주세요.

  • curl-loader – cURL 기반의 오픈 소스 테스트 도구
  • libwww – 명령줄 인터페이스가 포함된 초기 라이브러리
  • PowerShelliwr (Invoke-WebRequest) Windows PowerShell에는 컬과 같은 기능이 있으며 Web-client 클래스도 있습니다.[19]
  • 웹 크롤러 – 웹 크롤러 가능 인터넷 봇
  • Wget – 연관된 라이브러리는 없지만 재귀 다운로드가 가능한 유사한 명령줄 도구입니다.

레퍼런스

  1. ^ Stenberg, Daniel (20 March 2015). "curl, 17 years old today". daniel.haxx.se. Retrieved 20 March 2015.
  2. ^ a b "History of curl - How curl Became Like This". curl. Archived from the original on September 30, 2017. Retrieved November 17, 2016. Daniel simply adopted an existing command-line open-source tool, httpget, that Brazilian Rafael Sagula had written and recently release version 0.1 of. After a few minor adjustments, it did just what he needed. […] HttpGet 1.0 was released on April 8th 1997 with brand new HTTP proxy support. […] Stenberg was spending time writing an IRC bot for an Amiga related channel on EFnet. He then came up with the idea to make currency-exchange calculations available to Internet Relay Chat (IRC) users.
  3. ^ Daniel Stenberg (27 June 2022). "curl 7.84.0". Retrieved 27 June 2022.
  4. ^ "curl License". spdx.org.
  5. ^ "curl - copyright". curl.se.
  6. ^ "curl - Frequently Asked Questions". curl.se.
  7. ^ Stenberg, Daniel. "Origin of the name". curl.se. Retrieved 2021-03-27.
  8. ^ "History of curl". fossies.org. Archived from the original on September 29, 2021.
  9. ^ "Changelog". 4 January 2020. Retrieved 4 January 2020. The first curl release. The tool was named urlget before this. And httpget before that.
  10. ^ Stenberg, Daniel (4 January 2020). "Restored complete curl changelog" (html). Haxx Se. Retrieved 2 January 2020.
  11. ^ Jones, M. Tim (8 September 2009). "Conversing through the Internet with cURL and libcurl - Using libcurl with C and Python". IBM Developerworks. Archived from the original on 14 April 2015. Retrieved 12 September 2018.
  12. ^ Stenberg, Daniel (5 August 2019). "http09: disable HTTP/0.9 by default in both tool and library". GitHub. Archived from the original (html) on 5 August 2019. Retrieved 5 August 2019. As the plan has been laid out in Deprecated. Update docs accordingly and verify in test 1174.
  13. ^ a b "curl - How To Use". curl.se.
  14. ^ "Open Source Components for the Native SDK for BlackBerry Tablet OS". Archived from the original on 2013-01-27. Retrieved 2017-09-19.
  15. ^ "Tar and Curl Come to Windows!". techcommunity.microsoft.com. March 22, 2019.
  16. ^ "libcurl bindings". curl.se.
  17. ^ "curl supports rustls daniel.haxx.se". Retrieved 2022-01-01.
  18. ^ "curl - SSL CA Certificates". curl.se.
  19. ^ Del, Ryan (2 March 2018). "Comandi equivalenti a cURL e Wget per Windows command-line con Powershell" [cURL and Wget equivalent commands for Windows command-line with Powershell] (html). Ryadel (in Italian). Retrieved 4 January 2020. Per emulare il comportamento del comando Linux cURL, è sufficiente creare un file cURL.ps1 contenente la seguente riga di codice

외부 링크