Skip to content

HENGSHI SENSE 第三方软件配置常见问题

Nginx 相关配置

上传文件是否有大小限制?

需要通过前置的反向代理进行限制,比如 nginx:

# nginx 配置文件在衡石的 server 中配置
client_max_body_size 100m;

如何设置 http 连接超时时间?

http 连接超时也是在衡石前端的反向代理设置,比如 nginx:

# nginx 配置文件在衡石的 server 中配置
proxy_connect_timeout  600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout       600;

如何通过80和443端口进行服务?

HENGSHI SENSE 不能以 root 启动,所以不能绑定小于1024的端口。如需监听80和443端口,建议使用 nginx 做反向代理。 建立配置文件/etc/nginx/conf.d/hengshi.conf,内容如下。

# hengshi proxy
upstream hengshi-proxy {
        server <HENGSHI_IP>:<HENGSHI_PORT>;
}
server {
        server_name <SERVNAME>;
        access_log /var/log/nginx/access.log main;
        listen 80;
        location / {
                proxy_pass http://hengshi_proxy;
        }
}
server {
        server_name <SERVNAME>
        listen 443 ssl http2; # 一定要配置 https 2.0 提升浏览器请求并发数
        access_log /var/log/nginx/access.log main;

        gzip on; #开启 gzip 压缩,优化页面加载速度
        gzip_vary on;
        client_max_body_size 200M;
        proxy_connect_timeout    900;
        proxy_read_timeout       900;
        proxy_send_timeout       900;

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:!DSS';
        ssl_prefer_server_ciphers on;
        ssl_session_timeout 5m;
        ssl_session_cache shared:SSL:50m;
        ssl_session_tickets off;
        ssl_certificate <PATH_TO_CER>
        ssl_certificate_key <PATH_TO_CER_KEY>
        add_header Strict-Transport-Security "max-age=31536000" always;
        location / {
                # 以下 X-Forwarded-Host 与 X-Forwarded-Proto 设置,对于 SSO 场景是必要的,注意不要遗漏!
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_pass http://hengshi-proxy;
        }
}

其中,变量需要替换成真实值。

  • <HENGSHI_IP>: 部署 HENGSHI 的机器 ip。
  • <HENGSHI_PORT>: HENGSHI 服务绑定的端口。
  • <SERVNAME>: Nginx 用于提供服务的 hostname。
  • <PATH_TO_CER>, <PATH_TO_CER_KEY>: 分别是提供 ssl 服务的 cer/key 文件的绝对路径。

离线安装docker与docker-compose

类别架构下载地址
Linuxdocker x86_64https://download.hengshi.com/3rd/docker-linux-x64/docker-28.1.1.tgz
Linuxdocker-compose x86_64https://download.hengshi.com/3rd/docker-linux-x64/docker-compose-linux-x86_64_v2.36.2.tar.gz
Linuxdocker arm64https://download.hengshi.com/3rd/docker-linux-aarch64/docker-23.0.6.tgz
Linuxdocker-compose arm64https://download.hengshi.com/3rd/docker-linux-aarch64/docker-compose

本文示例为x86_64平台,如您是arm64请下载对应的安装包。

1, 将docker与docker-compose的安装包下载到服务器上, 你应该看到如下文件内容

shell
 ls
docker-28.1.1.tgz  docker-compose-linux-x86_64_v2.36.2.tar.gz

2, 安装docker

shell
tar xf docker-28.1.1.tgz # 解压文件
cp docker/* /usr/bin/  # 将可执行文件文件拷贝至系统路径下

3, 准备docker.service文件

shell
cat <<EOF > /usr/lib/systemd/system/docker.service/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF

4, 启动docker服务

shell
systemctl daemon-reload
systemctl start docker
systemctl enable docker # 加入开机启动

systemctl status docker # 查看服务状态

5, 拷贝docker-compose到系统目录下

shell
tar xf docker-compose-linux-x86_64_v2.36.2.tar.gz
cp docker-compose /usr/local/bin/
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

6, 查看docker与docker-compose的版本, 返回如下示例信息则安装成功。

shell
 docker -v
Docker version 28.1.1, build 4eba377

 docker-compose version
Docker Compose version v2.36.2

衡石分析平台使用手册