작성
·
21
0
접속하면 아래와 같이 브라우저와 콘솔에서 에러가 발생하고 접속이 되지 않습니다.
브라우저
localhost에서 잘못된 응답을 전송했습니다.
ERR_SSL_PROTOCOL_ERROR
콘솔
11월 15, 2024 11:47:08 오전 org.apache.coyote.http11.Http11Processor service
정보: HTTP 요청 헤더를 파싱하는 중 오류 발생
비고: HTTP 요청 파싱 오류들이 더 발생하는 경우 DEBUG 레벨 로그로 기록될 것입니다.
java.lang.IllegalArgumentException: 메소드 이름에 유효하지 않은 문자가 발견되었습니다. HTTP 메소드 이름은 유효한 토큰이어야 합니다.
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:407)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:269)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:937)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
at java.lang.Thread.run(Unknown Source)
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. dhm_w님.
질문하신 내용은 HTTPS 연결 설정과 관련하여 발생한 문제로 보입니다. 이 문제가 발생하는 주요 원인은 HTTPS를 위한 SSL 설정이 제대로 구성되지 않았을 때 또는 SSL을 지원하지 않는 포트로 접속을 시도했을 때입니다.
SSL 설정 확인하기: Tomcat이나 다른 서버에 HTTPS를 위한 SSL Certificate가 설치되어 있는지 확인하시고, 서버 설정 파일(server.xml
등)에서 올바른 경로로 설정되어 있는지 확인합니다.
포트 확인하기: HTTPS는 일반적으로 포트 443
을 사용하므로, 만약 8080 포트를 사용하고 있다면 이를 SSL 지원 포트로 변경하거나, SSL을 사용하지 않는 포트에서 접근하는 것이 필요합니다.
HTTP와 HTTPS 구분하기: 브라우저에서 잘못된 프로토콜을 사용했을 수 있습니다. HTTPS 대신 HTTP로 접속을 시도하거나, 만약 HTTPS가 반드시 필요한 경우라면 SSL 인증서 및 설정을 다시 확인해야 합니다.
로컬 환경 설정 문제: 로컬 환경에서 SSL을 설정하지 않았다면, 로컬 개발 단계에서는 일반 HTTP를 사용하는 것이 더 간단할 수 있습니다.
관련하여 이전 질문 게시물에서는 컨트롤러의 리턴값
이 잘못 설정되어 문제를 일으킨 경우를 예를 들어 설명되었으니, 컨트롤러 및 설정 파일들도 확인해 보시는 것을 추천합니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.