kangle环境是一款国产的WEB服务器是跨平台、轻量级、易上手、功能强大的高性能web和反向代理服务器软件。kangle的适用平台也很广泛如:Linux、Windows、Freebsd等等这些平台都可以编译安装。
在GitHub的页面查看发现作者还在更新,这里就要尝鲜安装一下。
使用环境 Debian 12.5
这里的参考脚本来源:funnycups/kangle
一键脚本安装
不想折腾的伙伴,可以使用脚本一键安装,脚本来源GitHub。
1curl -s https://raw.githubusercontent.com/funnycups/kangle/main/install.sh|bash
安装相关依赖
1apt update -y
2apt install -y git cmake make curl wget zip unzip build-essential zlib1g zlib1g-dev libssl-dev\
3 libevent-dev libjpeg-dev libpng-dev libtiff-dev pkg-config autoconf bison re2c libxml2-dev libsqlite3-dev\
4 libcurl4-gnutls-dev libfreetype-dev libonig-dev
安装kangle支持的新特征
HTTP3 和 zstd 支持
1#brotli
2wget https://github.com/google/brotli/archive/refs/tags/v1.0.9.tar.gz -O brotli.tar.gz
3tar zxf brotli.tar.gz
4rm -rf brotli.tar.gz
5cd brotli-1.0.9
6mkdir out
7cd out
8cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF ..
9cmake --build . --config Release --target install
10
11#zstd
12git clone https://github.com//zstd
13
14#pcre
15wget jaist.dl.sourceforge.net/project/pcre/pcre/8.45/pcre-8.45.tar.gz?viasf=1 -O pcre.tar.gz
16tar zxf pcre.tar.gz
17rm -rf pcre.tar.gz
18cd pcre-8.45
19mkdir build
20cd build
21cmake -DCMAKE_C_FLAGS=-fPIC DCMAKE_CXX_FLAGS=-fPIC ..
22make && make install
安装kangle环境
1# kangle
2git clone https://github.com/litespeedtech/lsquic
3cd lsquic && git submodule update --init --recursive
4cd ~/install
5git clone https://github.com/google/boringssl
6git clone https://github.com/keengo99/kangle
7cd kangle
8git submodule update --init --recursive
9mkdir build
10cd build
11mkdir -p /vhs/kangle
12cmake -DCMAKE_INSTALL_PREFIX=/vhs/kangle -DZSTD_DIR=~/install/zstd -DENABLE_BROTLI=ON -DBORINGSSL_DIR=~/install/boringssl -DLSQUIC_DIR=~/install/lsquic ..
13make && make install
14
15#kangle service
16touch /lib/systemd/system/kangle.service;
17cat >>/lib/systemd/system/kangle.service<<EOF
18[Unit]
19Description=Kangle Web Service
20After=syslog.target network.target
21[Service]
22Type=forking
23ExecStart=/vhs/kangle/bin/kangle
24ExecStop=/vhs/kangle/bin/kangle -q
25[Install]
26WantedBy=multi-user.target
27EOF
28
29ln -s /lib/systemd/system/kangle.service /etc/systemd/system/multi-user.target.wants/kangle;
30systemctl daemon-reload;
31systemctl enable kangle;
安装kwebp组件
1#install kwebp
2cd ~/install
3git clone https://github.com/webmproject/libwebp
4cd libwebp
5mkdir build && cd build
6cmake .. -D CMAKE_C_FLAGS=-fPIC
7make && make install
8cd ~/install
9git clone https://github.com/keengo99/kwebp
10cd kwebp
11mkdir build && cd build
12cmake .. -DKANGLE_DIR=/vhs/kangle -DLIBWEBP_DIR=~/install/libwebp
13make
14make install
安装Kwaf组件
1#install kwaf
2cd ~/install
3git clone https://github.com/keengo99/kwaf
4cd kwaf
5sed -i "s/set(CMAKE_INSTALL_PREFIX \${KANGLE_DIR})//" CMakeLists.txt
6mkdir build && cd build
7cmake .. -DKANGLE_DIR=~/install/kangle -DCMAKE_INSTALL_PREFIX=/vhs/kangle
8make
9make install
部分配置参数
1#set etc config
2cd /vhs/kangle/etc
3wget -O config.xml https://raw.githubusercontent.com/funnycups/kangle/main/config.xml
4
5#start Kangle
6systemctl start kangle
安装完成,浏览器打开 IP:3311 进行访问/