update config.md

This commit is contained in:
notch
2021-01-13 08:27:00 +08:00
parent b678e39bea
commit c437383881

View File

@@ -1,4 +1,4 @@
## 1. 配置对象
## 1. 配置文件(config.json)
属性 | 说明 | 示例
-|-|-
listen | 侦听地址,":1554" | 默认:":1554" |
@@ -8,31 +8,101 @@ hlsfragment | hls 分段大小(单位秒)| 默认10 |
hlspath | hls临时文件存储目录不设置则在内存存储|默认:空字串,使用内存文件 |
profile | 是否启动在线诊断|默认false |
tls | 安全连接配置 |如果需要http范围设置该配置向 |
routetable | 路由表提供者 | 默认json|
users | 用户提供者 |默认json |
routetable | 路由表提供者 | 默认json provider|
users | 用户提供者 |默认json provider|
log | 日志配置 | |
## 2. tls 配置
### 1.1 tls 配置
属性 | 说明 | 示例
-|-|-
listen | 安全连接侦听地址 |默认":443" |
cert | 证书内容或文件 | |
key | 私钥内容或文件 | |
## 3. 路由表配置文件
### 1.2 routetable 配置
属性 | 说明 | 示例
-|-|-
provider | 路由表提供者名称 |默认"json" |
config | 提供者配置 | |
config.xxx | 提供者所需的配置名称和值 | |
目前支持 json 和 memory 提供者以json为例
``` json
"routetable":{
"provider":"json",
"config":{
"file":"./cfg/routetable.json"
}
}
```
需要其他路由表提供者,需自行开发。
### 1.3 users 配置
属性 | 说明 | 示例
-|-|-
provider | 用户安全提供者名称 |默认"json" |
config | 提供者配置 | |
config.xxx | 提供者所需的配置名称和值 | |
目前支持 json 和 memory 提供者以json为例
``` json
"users":{
"provider":"json",
"config":{
"file":"./cfg/users.json"
}
}
```
需要其他用户安全提供者,需自行开发。
### 1.4 完整配置文件示例
``` json
{
"listen": ":1554",
"auth": false,
"cache_gop": true,
"hlspath":"./",
"hlsfragment":10,
"profile": false,
"routetable":{
"provider":"json",
"config":{
"file":"./cfg/routetable.json"
}
},
"users":{
"provider":"json",
"config":{
"file":"./cfg/users.json"
}
},
"log": {
"level": "debug",
"tofile": false,
"filename": "./logs/ipchub.log",
"maxsize": 20,
"maxdays": 7,
"maxbackups": 14,
"compress": false
}
}
```
## 2. 路由表配置文件
默认位置在可执行文件同目录默认名称routetable.json。
属性 | 说明 | 示例
-|-|-
pattern | 本地路径模式字串 | 当以'/'结尾表示一个以pattern开头的请求都路由到下面的url |
url | 路由的目标地址用户名和密码可以直接写在url中 | rtsp://admin:admin@localhost/live2 |
keepalive | 是否保持连接如果没有消费者是否继续保持连接如果为false在5分钟后自动断开 | false/true |
### 3.1 pattern
### 2.1 pattern
模式字串有两种形式:
+ 精确形式
+ 目录形式
目录形式以'/'字符结束表示以此pattern开始的流路径都将路由到它对应的url。它适合于多层组织结构的路由导航。
### 3.2 完整实例:
### 2.2 完整实例:
``` json
[
{
@@ -57,7 +127,9 @@ keepalive | 是否保持连接;如果没有消费者是否继续保持连接
将路由到 rtsp://admin:admin@localhost:8540/video/door
## 4. 用户配置文件
## 3. 用户配置文件
默认位置在可执行文件同目录默认名称users.json。
属性 | 说明 | 示例
-|-|-
name | 用户名 | admin |
@@ -85,22 +157,22 @@ pull | 拉取权限 | * |
]
```
### 4.2 权限配置格式说明
### 3.2 权限配置格式说明
+ `*` 0-n 段通配
+ `+` 表示可以一个路径端通配
可以通过分号设置多个
#### 4.2.1 例子1
#### 3.2.1 例子1
当权限设置为 /a
+ 路径 /a 通过授权
+ 路径 /a/b 不通过授权
#### 4.2.2 例子2
#### 3.2.2 例子2
当权限设置为 /a/*
+ 路径 /a 通过授权
+ 路径 /a/b, /a/c, /a/b/c 都通过授权
#### 4.2.3 例子3
#### 3.2.3 例子3
当权限设置为 /a/+/c/*
+ 路径 a/b/c, a/d/c, a/b/c/d, a/b/c/d/e 都通过授权
+ 路径 a/c 不通过授权