cURL: 기본적으로 http 및 https를 요청합니다.

cURL: 기본적으로 http 및 https를 요청합니다.

서버가 포트 5000에서 실행 중입니다. URL을 cURL하고 응답을 구문 분석하려면 bash 스크립트를 작성해야 합니다. 여기서 문제는 서버가 http또는 https프로토콜에서 실행될 수 있다는 것입니다. 이는 컬 https://serverip:5000또는 http://serverip:5000.

이제 먼저 http요청을 확인합니다. 해당 요청이 실패하면 확인하겠습니다 https. cURL실행 중인 서버를 자동으로 감지 http하거나 https서버에 요청하는 방법이 있나요 ?

답변1

AFAIK, "curl" 명령은 연결이 SSL인지 확인하는 기능을 제공하지 않습니다. 따라서 이를 확인하려면 다양한 도구를 사용해야 합니다.

지정된 연결이 SSL인지 확인하기 위해 "openssl"을 사용하는 작은 스크립트를 만들었습니다. 즐기다:

#!/bin/bash

if [ $# -lt 1 ]; then 
    echo "Usage: testssl.sh <host> [port]"
    exit 1;
fi 

PROTO="http"
echo ^d | openssl s_client -connect ${1}:${2:-443} && PROTO="https"
curl ${PROTO}://${1}:${2:-443}

관련 정보