Quantcast
Channel: Good mind
Viewing all articles
Browse latest Browse all 511

apache 502에러& keepalive

$
0
0
02 Bad Gateway 에러
502 Bad Gateway :

서버 상태와 관련된 오류로 서버에서 이상 트래픽 혹은 속도 저하 발생시에 생기는 에러.
인터넷 상 한 서버가 다른 서버로부터 유효하지 않은 응답을 수신할 때 발생한다.
보통 서버간 문제이기 때문에 해결하기가 쉽지 않다. 아래 해결방법으로 해결이 될 수도 있겠지만 해결이 안될 가능성도 크다.

서비스 제공자가 서버에서 해결방법 – Apache :

1. Apache 서버의 설정 중 KeepAlive 를 off로 설정.
2. MaxKeepAliveRequest 와 KeepAliveTimeout 값 을 적절하게 조절.

KeepAlive 에 대한 설정값이 있는 설정 파일의 위치:
[아파치 설정 디렉토리]/conf/httpd.conf  혹은
[아파치 설정 디렉토리]/conf/extra/http-default.conf

두번째 경우는 httpd.conf 파일에 httpd-default.conf 부분에 주석이 해제 되어있는 경우다.

서비스 사용자가 웹브라우저 에서 해결 방법 :

F5 키를 이용해 새로고침을 한다.
일시적인 이유로 인해 502 Bad Gateway 오류가 발생했을 때 는 F5 키를 누른 것 만으로 해결이 된다.
열려있는 모든 브라우저를 닫은 후 다시 브라우저를 통해 연다.
브라우저를 이용하던 중 PC에 어떤 문제가 생겨 오류가 발생한 경우는 브라우저를 모두 닫고 새로 시작하는 것으로 해결된다.
브라우저 캐시 삭제
오래된, 혹은 손상된 캐시파일 로 인해 502 Bad Gateway 오류가 발생할 수 있다.
브라우저 쿠키 삭제
브라우저 내 모든 캐시 혹은 502 Bad Gateway 오류가 발생한 사이트와 관련된 캐시를 지우는 것으로 해결할 수 있는 경우도 있다.
안전모드에서 브라우저를 시작
브라우저 내 도구모음 혹은 추가기능, 확장기능 을 모두 중지한 상태에서 브라우저를 실행한다.
이렇게 해서 문제가 해결이 된다면 브라우저에 설치된 추가기능 중 오류가 있어서 502 Bad Gateway 오류가 발생한 것일 가능성이 높다.
다른 브라우저를 이용한다.
Firefox, Chrome, Internet Explorer, Opera, Sarari 등 다른 브라우저를 이용한다 .
컴퓨터 재시작
컴퓨터에 일시적인 문제가 있어서 502 Bad Gateway 오류가 발생한 경우 컴퓨터를 재시작 하면 해결이 된다.
공유기, 모뎀, 라우터, 스위칭 허브 등 인터넷에 연결된 중간 네트워크 기기를 재시작.
DNS 서버의 일시적인 오류가 원인인 경우 네트웤 장비를 재부팅 하는 것으로 해결될 수 있다.
참고  URL : https://www.lifewire.com/504-gateway-timeout-error-explained-2622941


KeepAlive (기본 값 : On)

client 와 맺은 연결을 유지하겠다는 의미로 첫 요청 시에 열어 놓은 port 를 끊지 않고 유지하는 방식입니다. 즉 특정 client 의 요청을 특정 프로세스가 처리하겠다는 것입니다.
* 단 이와 같은 성능향상을 보일려면 서버가 바쁘지 않아야 한다. 아주 바쁜 서버 환경에서 KeepAlive On을 설정해 놓을 경우 모든 접속자 마다 연결 유지를 해 놓아야 하기 때문에 아파치 프로세스수가 기하 급수적으로 늘어나 MaxClient값을 초과하게 된다. 또한 On상태일때 접속유지 하는 프로세스들 때문에 메모리를 그 만큼 많이 사용하게 된다.

KeepAlive 를 on 으로 설정한 경우에는 KeepAliveTimeout (기본 값 : 5초) 꼭 설정해주어야 합니다.
이 값은 해당 값 동안만 연결을 유지하겠다는 의미입니다. (KeepAliveTimeout 값이 채워지기 전에 다시 요청이 올 경우에는 다시 0 부터 count 를 수행합니다.)



#vi /etc/httpd/conf/httpd.conf

의 제일 마지막 줄로 가서 (vi 명령어 대문자 G) 다음과 같은 설정을 하였다.

원래의 설정

<VirtualHost *:80>
    ServerName trycat.co.kr

    ProxyPass / http://172.27.26.245/
    ProxyPassReverse / http://172.27.26.245/

    ServerAlias www.trycat.co.kr
</VirtualHost>

여기서 ip 주소는 우리 회사가 사용하는 클라우드 서버의 내부 ip주소이다.
이렇게 하자 넘어가기는 제대로 넘어가되, 문제가 발생하였다.

해당 페이지의 HTML은 제대로 불러오기가 되었지만 이미지나 CSS 등은 하나도 로딩이 되지 않은 것.
구글링을 열심히 해보니 역시 여기엔 해결책이 있었다.

수정한 설정

<VirtualHost *:80>
    ServerName trycat.co.kr

    ProxyPass / http://172.27.26.245/ retry=1 acquire=3000 timeout=600 Keepalive=On
    ProxyPassReverse / http://172.27.26.245/

    ServerAlias www.trycat.co.kr
</VirtualHost>

안녕하세요 기술지원팀 서정민입니다.
특정 사이트를 방문했을 때 502 Bad Gateway 메세지가 나오면서 사이트 접속이 되지 않을 때 해결하는 방법을 포스팅 하려고 합니다.

1

위의 사진에 처럼 오류 메시지가 나오는 경우는 보안등의 문제로 인해서 네트워크에서 신호가 유실이 되는 문제로 인해서 발생하는 문제입니다.

모든 사용자에게 나타나는 문제는 아니고 네트워크 환경에 따라서 나타나는 현상입니다. 해당 문제를 해결하기 위해서는 인터넷 옵션에서 설정을 변경하시면 보통 해결이 됩니다. 서버 자체의 문제인 경우에는 클라이언트에서 해결할 수 있습니다. 서버 문제인 경우에는 시간이 지나면 자동으로 해결이 됩니다.

2

인터넷 익스플로러 창을 열어서 우측 상단에 있는 톱니바퀴를 클릭해서 인터넷 옵션을 클릭합니다. 만약 톱니바퀴가 없다면 Alt키를 누르시면 메뉴가 표시가 됩니다. 메뉴가 표시 되면 도구를 클릭해서 인터넷 옵션을 클릭합니다.

3

인터넷 옵션 창이 열리면 보안 탭을 선택 하시고 신뢰할수 있는 사이트를 선택합니다. 그리고 사이트 버튼을 클릭합니다.

4

502 Bad Gateway 문제가 발생하는 사이트의 주소를 입력하고 추가 버튼을 클릭하시면 됩니다.
다시 접속을 하면 해결이 되는것을 알 수 있습니다.
감사합니다.


Viewing all articles
Browse latest Browse all 511

Trending Articles