安装 Ubuntu Mattermost 后,在桌面上使用 Mattermost 应用程序后不久,应用程序出现“未找到地址”错误。

笔记:

  • 为 sub.domain.com 和 domain.com 安装了 SSL。
  • 当应用程序短时间使用时,有时两个域都会出现此错误,有时只有 mattermost.domain.com 会出现此错误。
  • SSL 证书由 certbot(letsencrypt)安装。

配置文件:

<VirtualHost *:80>
    ServerName mattermost.domain.com
    ServerAdmin user@gmail.com
    ProxyPreserveHost On

    <Proxy *>
        Order allow,deny
        Allow from all
    </Proxy>

    RewriteEngine On
    RewriteCond %{REQUEST_URI} ^/api/v3/users/websocket [NC,OR]
    RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC,OR]
    RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
    RewriteRule .* wss://127.0.0.1:8065%{REQUEST_URI} [P,QSA,L]
    RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f

    RewriteRule (.*) https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]

    <Location /api/v3/users/websocket>
        Require all granted
        ProxyPass ws://127.0.0.1:8065/api/v3/users/websocket
        ProxyPassReverse ws://127.0.0.1:8065/api/v3/users/websocket
        ProxyPassReverseCookieDomain 127.0.0.1 mattermost.domain.com
    </Location>

    <Location />
        Require all granted
        ProxyPass http://127.0.0.1:8065/
        ProxyPassReverse http://127.0.0.1:8065/
        ProxyPassReverseCookieDomain 127.0.0.1 mattermost.domain.com
    </Location>

    RewriteCond %{SERVER_NAME} =www.mattermost.domain.com [OR]
    RewriteCond %{SERVER_NAME} =mattermost.domain.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

<VirtualHost *:80>
    ServerName domain.com
    ServerAdmin user@gmail.com
    DocumentRoot /var/www/domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    RewriteEngine on
    RewriteCond %{SERVER_NAME} =domain.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost *:443>
  ServerName mattermost.domain.com
  ServerAdmin admin@gmail.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 mattermost.domain.com
  </Location>


SSLCertificateFile /etc/letsencrypt/live/domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>


<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerName domain.com
        ServerAdmin admin@gmail.com
        DocumentRoot /var/www/domain
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined


        SSLCertificateFile /etc/letsencrypt/live/domain.com/fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/domain.com/privkey.pem
        Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

我尝试在 apache 服务器上安装 Mattermost 服务器。“https”突然不起作用。

0

0