> 네트워크 관리 > curl

curl -I: HTTP 헤더 정보 확인

curl -I는 웹 서버로부터 응답 헤더만을 가져와 표시하는 데 사용됩니다. 이는 웹 리소스의 상태, 캐시 정보, 서버 유형 등을 빠르게 확인하는 데 유용합니다. 실제 콘텐츠를 다운로드하지 않으므로 빠르고 효율적입니다.

개요

curl -I는 HTTP HEAD 요청을 보내 서버의 응답 헤더만을 가져옵니다. 이는 웹 페이지의 존재 여부, 리다이렉션 정보, 콘텐츠 타입, 캐시 제어 지시문 등을 확인하는 데 주로 사용됩니다. 실제 본문 데이터를 전송받지 않으므로 네트워크 트래픽을 절약하고 응답 시간을 단축할 수 있습니다.

주요 특징

  • HTTP HEAD 요청 전송
  • 응답 헤더 정보만 수신
  • 콘텐츠 다운로드 없음 (빠른 응답)
  • 웹 서버 상태 및 메타데이터 확인에 유용

주요 옵션

curl -I와 함께 자주 사용되는 옵션들입니다.

요청 및 출력 제어

생성된 명령어:

명령어를 조합해 보세요.

설명:

`curl` 명령어를 실행합니다.

위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.

사용 예시

curl -I 명령어를 활용한 다양한 시나리오입니다.

기본 HTTP 헤더 확인

curl -I https://www.example.com

지정된 URL의 HTTP 응답 헤더만 가져옵니다.

리다이렉션 추적하며 헤더 확인

curl -IL https://www.google.com

리다이렉션이 발생할 경우, 최종 목적지의 헤더까지 추적하여 표시합니다.

조용히 헤더만 출력

curl -Is https://www.github.com

진행 상황 표시 없이 오직 응답 헤더만 출력합니다.

자세한 정보와 함께 헤더 확인

curl -Iv https://www.naver.com

요청 및 응답의 상세 정보(예: SSL 핸드셰이크, HTTP 요청 헤더)를 함께 표시합니다.

특정 헤더만 필터링

curl -Is https://www.example.com | grep 'Content-Type'

grep과 조합하여 특정 헤더 정보만 추출할 수 있습니다.

설치

curl은 대부분의 리눅스 배포판에 기본적으로 포함되어 있지만, 없는 경우 다음 명령어로 설치할 수 있습니다.

Debian/Ubuntu

sudo apt update && sudo apt install curl

CentOS/RHEL/Fedora

sudo yum install curl

Arch Linux

sudo pacman -S curl

팁 & 주의사항

curl -I 사용 시 유용한 팁과 주의할 점입니다.

HTTP 상태 코드 확인

응답 헤더의 첫 줄에 있는 HTTP 상태 코드를 통해 웹 리소스의 현재 상태(예: 200 OK, 404 Not Found, 301 Moved Permanently)를 빠르게 파악할 수 있습니다.

  • 200 OK: 요청 성공
  • 3xx Redirection: 리다이렉션 필요 (-L 옵션 활용)
  • 4xx Client Error: 클라이언트 측 오류 (예: 404 Not Found)
  • 5xx Server Error: 서버 측 오류

캐시 제어 헤더 분석

Cache-Control, Expires, ETag 등의 헤더를 통해 웹 리소스의 캐싱 전략을 이해하고 디버깅할 수 있습니다.

  • Cache-Control: max-age, no-cache, no-store 등 캐시 정책
  • Expires: 캐시 만료 시간
  • ETag: 리소스 버전 식별자

보안 고려사항

일부 웹 서버는 응답 헤더에 서버 버전, 기술 스택 등 민감한 정보를 포함할 수 있습니다. 이를 통해 잠재적인 공격자가 시스템 정보를 얻을 수 있으므로, 공개된 환경에서 불필요한 정보 노출에 주의해야 합니다.


동일 카테고리 명령어