반응형
FastAPI 접속 오류 해결
브라우저에서 해당 앱에 접속하려고 하자 "사이트에 연결할 수 없음" (ERR_CONNECTION_REFUSED) 오류가 발생하고 있습니다.
✅ 현재 상황 요약
- FastAPI 앱은 uvicorn을 통해 다음 주소에서 실행됨:
- http://127.0.0.1:8000
- 그러나 Windows 호스트에서 가상머신 서버(192.168.142.200:8000) 로 접속하려 하여 연결 거부됨.
즉, 서버는 127.0.0.1 (자기 자신) 만 허용 중이고, 외부(호스트 PC)에서는 접근할 수 없음.
✅ 해결 방법
✔ 1. Uvicorn 실행 시 호스트를 0.0.0.0으로 지정
현재는 127.0.0.1에서만 접속을 허용하고 있어서 외부에서 접근이 안 됩니다. 다음 명령어로 실행해 주세요:
uvicorn main:app --reload --host 0.0.0.0 --port 8000
- --host 0.0.0.0 : 모든 외부 IP에서 접근 가능하도록 허용합니다.
- --port 8000 : 포트는 그대로 유지합니다.
✔ 2. Linux 방화벽 확인 (서버가 CentOS 또는 Ubuntu일 경우)
sudo ufw allow 8000
# 또는 CentOS의 경우
sudo firewall-cmd --add-port=8000/tcp --permanent
sudo firewall-cmd --reload
✔ 3. VMware 네트워크 설정 확인
- 현재 서버의 IP가 192.168.142.200인 것으로 보아 NAT 모드일 가능성이 있습니다.
- 접속이 필요하면 VMware의 가상 네트워크를 "Bridged 모드" 또는 포트 포워딩 설정된 NAT로 바꾸는 것을 권장합니다.
✅ 테스트 방법
- 가상머신에서 다음으로 다시 실행합니다:
uvicorn main:app --reload --host 0.0.0.0 --port 8000
- Windows 브라우저에서 다시 접속 시도:
http://192.168.142.200:8000
- 만약 여전히 안 되면 다음도 체크:
- ping 192.168.142.200 으로 네트워크 연결 확인
- curl http://127.0.0.1:8000 으로 서버 내부 테스트
🔚 정리
체크 항목 설명
--host 0.0.0.0 | 외부 접속 허용 |
방화벽 포트 개방 | 8000/tcp 허용 |
VMware 네트워크 | NAT → Bridged (또는 포트포워딩 설정) |
접속 주소 | http://192.168.142.200:8000 |
'실버를 위한 코딩 > 파이썬 연습' 카테고리의 다른 글
웹 기반 사용자 인터페이스(UI), Swagger (0) | 2025.04.03 |
---|---|
FastAPI 기초 교육 자료 (입문 실습용) (1) | 2025.04.03 |
conda로 가상환경 새로 만들기 (0) | 2025.04.03 |
[파이썬 연습] 별칭 사용으로 코드 간소화 (2) | 2024.12.08 |
[파이썬 연습] 딕셔너리(Dictionary)란? (2) | 2024.11.27 |