배경

배경

배경

저는 슬랙이 너무 비싸서 질려서 매터머스(mattermost)로 교체하기로 결정했습니다. 퍼블릭 IP가 있는 AWS 우분투 상자를 얻었고 가장 중요한 것을 따랐습니다.설치 지침(가장 큰 차이점은 별도의 DB 서버와 스토리지 서버 등을 갖는 것이 아니라 동일한 서버에서 모든 것을 실행한다는 것입니다. 모두 동일한 시스템에서 실행됩니다.http://127.0.0.1)

내 도메인(lobolabshq.com)은 다음에서 관리됩니다.윅스, 그래서 하위 도메인을 추가했습니다.Mattmost.lobolabshq.com

AWS 상자에 가장 중요한 서버를 설치한 다음 nginx 서버에 대한 요청을 프록시하도록 nginx를 설정했습니다. 내 nginx 프록시 구성은 /etc/nginx/sites-available/mattermost다음과 같이 저장됩니다 .

upstream backend {
    server 127.0.0.1:8065;
}

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off;

server {
    listen 80;
    server_name    mattermost.lobolabshq.com;

    location /api/v3/users/websocket {
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        client_max_body_size 50M;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Frame-Options SAMEORIGIN;
        proxy_buffers 256 16k;
        proxy_buffer_size 16k;
        proxy_read_timeout 600s;
        proxy_pass http://backend;
    }

    location / {
        client_max_body_size 50M;
        proxy_set_header Connection "";
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Frame-Options SAMEORIGIN;
        proxy_buffers 256 16k;
        proxy_buffer_size 16k;
        proxy_read_timeout 600s;
        proxy_cache mattermost_cache;
        proxy_cache_revalidate on;
        proxy_cache_min_uses 2;
        proxy_cache_use_stale timeout;
        proxy_cache_lock on;
        proxy_pass http://backend;
    }
}

문제

내가 갈 때http://mattermost.lobolabshq.com다음 오류를 반환합니다.

네트워크 오류(tcp_error)

통신 오류가 발생했습니다: "작업 시간 초과" 웹 서버가 다운되었거나 사용량이 많거나 기타 문제로 인해 요청에 응답할 수 없습니다. 나중에 다시 시도해 보세요.

분석/내가 시도한 것

가장 중요한 서버는 로컬에서 잘 실행됩니다.

나는 내 가장 중요한 서버가 로컬에서 잘 실행되고 있다는 것을 알고 있습니다.문서실행하면 curl http://127.0.0.01:8065가장 중요한 환영 페이지가 반환됩니다.

nginx 서버가 성공적으로 요청을 :80 포트로 다시 라우팅합니다.

나는 nginx가 잘 실행되고 있다는 것을 알고 있습니다. b/c를 실행할 때 curl http://localhost또는 curl http://127.0.0.1나는 또한 동일한 중요한 환영 페이지를 얻습니다.

도메인이 AWS 시스템을 가리키고 있습니다.

나는 그것을 알고 있다http://mattermost.lobolabshq.com또한 내 aws box 공개 IP를 가리킵니다.

dig mattermost.lobolabshq.com

; <<>> DiG 9.8.3-P1 <<>> mattermost.lobolabshq.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62124
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;mattermost.lobolabshq.com. IN  A

;; ANSWER SECTION:
mattermost.lobolabshq.com. 1800 IN  A   54.165.78.199

netstat 출력

sudo netstat -anp | grep tcp
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1803/nginx -g daemo
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1134/sshd
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      1249/postgres
tcp        0      0 172.31.50.32:22         185.81.141.147:54411    ESTABLISHED 1860/sshd: ubuntu [
tcp        0     72 172.31.50.32:22         185.81.141.147:60344    ESTABLISHED 1603/sshd: ubuntu [
tcp6       0      0 :::22                   :::*                    LISTEN      1134/sshd
tcp6       0      0 :::8065                 :::*

외부 요청이 nnix에 전달되지 않습니다.

로컬에서 실행하면 curl localhostnginx 액세스 로그가 업데이트됩니다.

127.0.0.1 - - [18/Jan/2017:06:41:09 +0000] "GET / HTTP/1.1" 200 2246 "-" "curl/7.47.0"

하지만 브라우저에서 Mattmost.lobolabshq.com을 방문하면 그런 항목이 표시되지 않습니다.

답변1

내 aws 박스가 속한 보안 그룹을 업데이트하고 포트 80에서 들어오는 모든 TCP 연결이 작동하도록 허용하면 되었습니다.

관련 정보