Apache2를 Mattermost 서버의 프록시로 구성하기 (비공식)
Important
이 비공식 안내서는 Mattermost 커뮤니티에 의해 유지보수되며, 이 배포 구성은 아직 Mattermost, Inc.에서 공식적으로 지원하지 않습니다. 커뮤니티 테스트, 피드백 및 개선 사항을 환영하며 크게 감사합니다 . GitHub에서 이 페이지를 편집 할 수 있습니다.
Ubuntu와 같은 데비안 기반 운영 체제에서 Apache2 프록시 구성은 /etc/apache2/sites-available
디렉터리에서 수행됩니다. Red Hat 기반 시스템은 Apache 구성 파일을 다르게 구성 합니다. Mattermost를 서브도메인에 설정하는 경우, mysubdomain.mydomain.com.conf
에 해당하는 새 구성 파일을 만들어야 합니다.
Apache2를 프록시로 구성하는 방법
서버에 SSH로 연결합니다.
Apache 모듈
mod_rewrite
,mod_proxy
,mod_proxy_http
,mod_proxy_wstunnel
이 설치되고 활성화되어 있는지 확인합니다. 그렇지 않은 경우, 리눅스 배포본의 지침에 따릅니다.위에서 언급한 구성 파일을 만듭니다. 종종
000-default.conf
또는default-ssl.conf
(Ubuntu의 경우)의 사본으로 시작하는 것이 도움이 됩니다.아래 안내서를 사용하여 구성을 수정합니다.
서브도메인을 설정하지 않는 경우,
ServerName
은 간단히mydomain.com
으로 설정됩니다.ServerAlias
를 원하면www.mydomain.com
을 포함시킬 수도 있습니다.값을 변경하여 서버 이름 등에 맞게 설정하세요.
Mattermost 설정에서 TLS를 활성화한 경우,
RewriteRule
에서ws://
대신에 프로토콜로wss://
를 사용해야 합니다.다른 포트(예: 8443)에서 요청을 처리하려면, VirtualHost 요소에서 포트를 설정하는 것 외에도, VirtualHost 줄 앞에 새로운 줄로
Listen 8443
를 추가하세요.
<VirtualHost *:80>
# 서브도메인을 사용하지 않는 경우 다음과 같이 ServerAlias를 설정해야 할 수도 있습니다:
# ServerAlias www.mydomain.com
ServerName mysubdomain.mydomain.com
ServerAdmin hostmaster@mydomain.com
ProxyPreserveHost On
# 웹 소켓 설정
RewriteEngine On
RewriteCond %{REQUEST_URI} /api/v[0-9]+/(users/)?websocket [NC]
RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC,OR]
RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
RewriteRule .* ws://127.0.0.1:8065%{REQUEST_URI} [P,QSA,L]
<Location />
Require all granted
ProxyPass http://127.0.0.1:8065/
ProxyPassReverse http://127.0.0.1:8065/
ProxyPassReverseCookieDomain 127.0.0.1 mysubdomain.mydomain.com
</Location>
</VirtualHost>
(데비안/우분투 전용) 아마도 지금까지 Apache2에서 서브도메인을 설정하지 않았을 것이므로,
a2ensite mysubdomain.mydomain.com
을 실행하여 사이트를 활성화합니다 (a2ensite mysubdomain.mydomain.com.conf
를 실행하지 마십시오).Apache2를 재시작합니다.
Ubuntu 14.04 및 RHEL 6의 경우:
sudo service apache2 art
Ubuntu 16.04+ 및 RHEL 7+의 경우:
sudo systemctl art apache2
이제 모두 완료되었습니다! Mattermost 구성 파일이 올바른 URL(포트를 포함할 수도 있음)을 가리키고 있는지 확인한 다음, 배포된 후 소켓 연결이 끊기지 않도록 합니다. Mattermost에 외부 액세스를 방지하려면 구성 파일에서 ListenAddress
를 localhost:8065
대신 :8065
로 설정하세요.