メインコンテンツへ移動

HTTPS

補足

HAPサービスにおける仕様上、システムのアクセスアドレス変更後は、追加で設定ファイル docker-compose.yaml の編集が必要です。 以下のとおり、ENV_ADDRESS_MAIN の環境変数値をHAPサービスの実際のアクセスアドレスに変更し、HAPサービスを再起動してください。

旧環境の場合、ENV_ADDRESS_MAIN が存在しないことがあります。その際は、ENV_MINGDAO_PROTO、ENV_MINGDAO_HOST、ENV_MINGDAO_PORT も同様に、環境変数値を変更してください。

Nginx 設定例​

httpsドメインでアクセスできるようにするには、nginxなどのプロキシを1層追加し、証明書を設定した上で、バックエンドのHAPサービスのイントラネットアドレスへプロキシします。

下記はnginxによるhttpsリバースプロキシ設定の一例です。

upstream hap {
server サーバーIP:8880; # HAPシステムのイントラネットIPおよびポートに変更してください
}


server {
listen 80;
server_name _;
rewrite ^(.*)$ https://$host$1 permanent;
}

server {
listen 443 ssl;
server_name _;
access_log /data/logs/weblogs/hap.log main; # ログパスは任意で設定可能
error_log /data/logs/weblogs/hap.error.log; # ログパスは任意で設定可能

ssl_certificate /etc/cert/fullchain.pem; # SSL証明書のファイルパスに変更してください
ssl_certificate_key /etc/cert/privkey.pem; # SSL証明書の秘密鍵ファイルパスに変更してください

underscores_in_headers on;
client_max_body_size 2048m;
gzip on;
gzip_proxied any;
gzip_disable "msie6";
gzip_vary on;
gzip_min_length 512;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_types text/plain text/css application/json application/x-javascript application/javascript application/octet-stream text/xml application/xml application/xml+rss text/javascript image/jpeg image/gif image/png;

location / {
set $real_ip '';
if ($http_x_real_ip) {
set $real_ip $http_x_real_ip;
}
if ($http_x_real_ip = '') {
set $real_ip $remote_addr;
}
proxy_set_header X-Real-IP $real_ip;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://hap;
}

# IM対応
location ~ /mds2 {
proxy_set_header Host $http_host;
proxy_hide_header X-Powered-By;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://hap;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
}

# SSEストリーミング応答と長時間接続に対応するため、プロキシバッファリングを無効化
location ~ ^/(agent|api/workflow/api/sse/chat) {
set $md_real_ip '';
if ($http_x_real_ip) {
set $md_real_ip $http_x_real_ip;
}
if ($http_x_real_ip = '') {
set $md_real_ip $remote_addr;
}
proxy_buffering off;
proxy_read_timeout 30m;
proxy_send_timeout 30m;
client_max_body_size 16m;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $md_real_ip;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-HTTP-Method-Override "";
proxy_pass http://hap;
proxy_redirect default;
}
}

システムの元のアクセス経路を維持しつつ、新規アドレスからもアクセスしたい場合は、複数アクセスアドレスの設定 を参照してください。