curl 7.66.0 เวอร์ชันใหม่มาพร้อมกับการสนับสนุนครั้งแรกสำหรับ HTTP / 3

ขด-7.66.0

cURL เป็นโครงการซอฟต์แวร์ที่ประกอบด้วยไลบรารี (ลิขเคิร์ล) และเปลือก (curl) มุ่งเน้นไปที่การถ่ายโอนไฟล์ รองรับโปรโตคอล FTP, FTPS, HTTP, HTTPS, TFTP, SCP, SFTP, Telnet, DICT, FILE และ LDAP และอื่น ๆ

cURL รองรับใบรับรอง HTTPS, HTTP โพสต์, HTTP ใส่, การอัปโหลด FTP, Kerberos, การอัปโหลดแบบฟอร์ม HTTP, พร็อกซี, คุกกี้, การตรวจสอบชื่อผู้ใช้และรหัสผ่าน (พื้นฐาน, DIgest, NTLM และการเจรจาต่อรองสำหรับ HTTP และ kerberos 4 สำหรับ FTP), ความต่อเนื่องในการถ่ายโอนไฟล์, HTTP proxy tunneling, IMAP, POP3, LDAP, RTSP, RTMP และผลประโยชน์อื่น ๆ

วัตถุประสงค์หลักและใช้สำหรับ cURL คือการโอนไฟล์โดยอัตโนมัติ หรือลำดับการดำเนินการที่ไม่ได้รับการดูแล ตัวอย่างเช่นเป็นเครื่องมือที่ถูกต้องในการจำลองการกระทำของผู้ใช้ในเว็บเบราว์เซอร์

เป็นพื้น เป็นยูทิลิตี้ในการรับและส่งข้อมูลผ่านเครือข่าย ซึ่งให้ความสามารถในการสร้างคำขอได้อย่างยืดหยุ่นโดยการตั้งค่าพารามิเตอร์เช่น cookie, user_agent, referer และส่วนหัวอื่น ๆ

นอกจากนั้นไลบรารี libcurl ยังมี API เพื่อใช้ฟังก์ชัน curl ทั้งหมดในโปรแกรมในภาษาเช่น C, Perl, PHP, Python

cURL เป็นโอเพนซอร์สซอฟต์แวร์ฟรีที่เผยแพร่ภายใต้ใบอนุญาต MIT

เกี่ยวกับ cURL 7.66.0 เวอร์ชันใหม่

Recientemente cURL เวอร์ชันใหม่เปิดตัว lซึ่งมาพร้อมกับการแก้ไขข้อผิดพลาด 77 ข้อและใช้นวัตกรรมหลายอย่าง การเพิ่มการสนับสนุนเบื้องต้นสำหรับโปรโตคอล HTTP / 3 จะถูกเน้นซึ่งยังไม่ได้นำไปสู่รูปแบบที่ใช้งานได้อย่างสมบูรณ์และถูกปิดใช้งานโดยค่าเริ่มต้น (เช่นจนกว่าตัวจัดการการยุติการเชื่อมต่อจะพร้อมใช้งานการประมวลผลแบบขนานและการร้องขอขนาดใหญ่จะไม่ทำงาน)

ในการเปิดใช้งาน HTTP 3 จำเป็นต้องสร้างใหม่โดยใช้แบ็กเอนด์ quiche หรือ ngtcp2 + nghttp3. มีการเสนอการใช้พารามิเตอร์« –http3 »และตัวเลือก libcurl « CURLOPT_HTTP_VERSION »;

การเปลี่ยนแปลงที่สำคัญอีกอย่างสำหรับ cURL เวอร์ชันใหม่นี้ก็คือ เพิ่มพารามิเตอร์ "-Z" ("–parallel") และ "–parallel-max" ซึ่งช่วยให้คุณสามารถจัดระเบียบการโหลดรายการ URL พร้อมกันในหลายลำดับ

เพิ่มความสามารถในการตั้งค่าตัวระบุอื่นสำหรับการอนุญาตใน SASL ซึ่งระบุโดยพารามิเตอร์ "–sasl-authzid" หรือตัวเลือก CURLOPT_SASL_AUTHZID (ตัวระบุการพิสูจน์ตัวตนจะถูกส่งผ่าน CURLOPT_USERPWD)

การประมวลผลของส่วนหัว HTTP Retry-After และโค้ดส่งคืน 429 ถูกนำไปใช้โดยใช้พารามิเตอร์ "–retry" หรือตัวเลือก CURLINFO_RETRY_AFTER

ส่วนหัว Retry-After กำหนดความล่าช้าก่อนที่จะส่งคำขอในภายหลังในกรณีที่ได้รับรหัสตอบกลับ 429 (มีคำขอมากเกินไป), 503 (ไม่มีบริการ) หรือ 301 (ย้ายถาวร)

การเปลี่ยนแปลงอื่น ๆ ที่โดดเด่นในเวอร์ชันใหม่นี้:

  • มีการเพิ่มฟังก์ชัน curl_multi_poll () ซึ่งเหมือนกับ curl_multi_wait () ยกเว้นเมื่อไม่มีตัวอธิบายไฟล์ที่ต้องรอ (curl_multi_wait สิ้นสุดลงในทันทีและ curl_multi_poll จะแนะนำการหน่วงเวลาสั้น ๆ ก่อนที่จะออกเพื่อหลีกเลี่ยงสถานการณ์การโหลดที่ผิดปกติเนื่องจากการเรียกแบบวนซ้ำ)
  • ตั้งแต่รุ่นนี้ curl จะพิจารณาว่าการตอบสนอง HTTP เหล่านั้นไม่ถูกต้องตามค่าเริ่มต้น
  • แก้ไขช่องโหว่: CVE-2019-5481: ล็อคหน่วยความจำฟรีสองครั้งใน FTP-KRB (เคอร์เบอรอสผ่าน FTP); CVE-2019-5482: บัฟเฟอร์ล้นในไดรเวอร์ TFTP
  • แก้ไขการถดถอยที่ทำให้ curl ใช้ข้อมูลรับรอง URL ไม่ถูกต้องเมื่อทำการตรวจสอบสิทธิ์แบบหลายขั้นตอน (เช่น HTTP Digest) ด้วยพร็อกซี

จะติดตั้ง cURL บน Linux ได้อย่างไร?

สำหรับผู้ที่สนใจสามารถติดตั้ง cURL เวอร์ชันใหม่นี้ได้ พวกเขาสามารถทำได้โดยดาวน์โหลดซอร์สโค้ดและรวบรวม

สำหรับสิ่งนี้สิ่งแรกที่เราจะทำคือดาวน์โหลดแพ็คเกจ cURL ล่าสุดด้วยความช่วยเหลือของเทอร์มินัลในนั้น พิมพ์:

wget https://curl.haxx.se/download/curl-7.66.0.tar.xz

จากนั้นเราจะเปิดเครื่องรูดแพ็คเกจที่ดาวน์โหลดมาด้วย:

tar -xzvf curl-7.66.0.tar.xz

เราเข้าสู่โฟลเดอร์ที่สร้างขึ้นใหม่ด้วย:

cd curl-7.66.0

เราเข้าสู่รูทด้วย:

sudo su

และเราพิมพ์สิ่งต่อไปนี้:

./configure --prefix=/usr \
--disable-static \
--enable-threaded-resolver \
--with-ca-path=/etc/ssl/certs &&
make
make install &&
rm -rf docs/examples/.deps &&
find docs \( -name Makefile\* -o -name \*.1 -o -name \*.3 \) -exec rm {} \; &&
install -v -d -m755 /usr/share/doc/curl-7.66.0 &&
cp -v -R docs/* /usr/share/doc/curl-7.66.0

ในที่สุดเราสามารถตรวจสอบเวอร์ชันด้วย:

curl --version

แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. รับผิดชอบข้อมูล: AB Internet Networks 2008 SL
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา