diff --git a/README.md b/README.md
index 26d9fd7..a21e370 100644
--- a/README.md
+++ b/README.md
@@ -1166,11 +1166,7 @@ Senat type judgment, easy to check whether the network supports p2p, you can exe
## 5.SOCKS5 Proxies
prompt:
-SOCKS5 proxy, support CONNECT, UDP protocol, does not support BIND, supports username and password authentication.
-
-*** If your VPS is Alibaba Cloud, Tencent Cloud is a VPS, if ifconfig can't see your public IP, you can only see the intranet IP, ***
-
-*** Then you need to add the `-g VPS public network IP` parameter, the UDP function of the SOCKS5 proxy can work normally. ***
+SOCKS5 proxy, support CONNECT, UDP protocol, does not support BIND, supports username and password authentication.
***The udp function of socks5 is turned off by default, and can be turned on by `--udp`. The default is a random port for handshake, and performance can be improved by fixing a port.
Set by parameter `--udp-port 0`, `0` represents a free port is randomly selected, or you can manually specify a specific port. ***
@@ -1268,10 +1264,6 @@ Secondary HTTP proxy (local Linux)
`proxy socks -t tcp -p ":8080" -T kcp -P "22.22.22.22:38080" --kcp-key mypassword`
Then access the local port 8080 is to access the proxy port 38080 on the VPS, the data is transmitted through the kcp protocol.
-notice:
-
-When using the kcp protocol locally, you need to specify the vps public network IP with -g, and the UDP function of socks5 is fully used. At this time, -g is the IP address in the UDP address returned to the client.
-
### 5.9. Custom DNS
--dns-address and --dns-ttl parameters, used to specify the dns (--dns-address) used by the proxy to access the domain name.
And the analysis result cache time (--dns-ttl) seconds, to avoid system dns interference to the proxy, in addition to the cache function can also reduce the dns resolution time to improve access speed.
@@ -1437,10 +1429,6 @@ Listen port argument `-p` can be:
-p ":8081,:8082,:9000-9999" listen on 8081 and 8082 and 9000 and 9001 to 9999, 1002 total ports
```
-notice:
-
-When using the kcp protocol locally, you need to specify the vps public network IP with -g, and the UDP function of socks5 is fully used. At this time, -g is the IP address in the UDP address returned to the client.
-
The udp function of ss is turned off by default and can be turned on by `--ssudp`. The udp function of socks5 is turned off by default and can be turned on by `--udp`, The default is a random port for handshake, and performance can be improved by fixing a port.
Set by parameter `--udp-port 0`, `0` represents a free port is randomly selected, or you can manually specify a specific port.
@@ -2058,23 +2046,31 @@ Then this problem can be solved through the control interface. The control inter
#### Request Description
-The proxy sends an HTTP POST request to the control interface URL. There are two fields in the form data: user and ip.
+An HTTP POST request will be sent to the control. The interface `form` has three fields: interface, ip, conns, and the `conns` field requires a user whose proxy version is greater than proxy `12.2`.
-user: the user name currently connected to the proxy, multiple are separated by commas, for example: user1, user2
+`user` The username currently connected to the agent, multiple separated by commas, for example: user1, user2
+
+`ip` The client IP is connected to the proxy, and multiple clients using English are split addresses, for example: 1.1.1.1, 2.2.2.2
-ip: The IP address of the client currently connected to the proxy, multiple are separated by commas, for example: 1.1.1.1, 2.2.2.2
+`conns` The tcp connection information currently connecting to the proxy port to transmit data. The conns value is a json string, the format is a sequence of connections, the element is an object, the object contains the details of the connection,
+conns format: `[{"id":"ab7bf1f10501d6f7","client":"127.0.0.1:62112","server":"127.0.0.1:9092","user":""}]`
+Object field description: id: connection id, client: client's unique IP address and port, server: client's IP and no port access, user's connection authentication (null if any)
#### Response Data Description
-The data returned by the control interface is invalid user and IP, the format is a json object data, there are two fields user and ip.
+The data returned by the control interface is invalid user and IP or connection. The format is a json object data. There are three fields user, ip, and conns. The `conns` field requires the proxy version greater than or equal to `12.2`.
+Format: `{"user":"a,b","ip":"",conns:["ab7bf1f10501d6f7","cb7bf1f10501d6f7"]}`
-For example: {"user": "a, b", "ip": ""}
+`user`: The username currently connected to the proxy, multiple separated by commas, not left blank, for example: user1, user2
-user: the user name currently connected to the proxy, multiple are separated by commas, not left blank, for example: user1, user2
+`ip`: The ip address of the client currently connected to the proxy, multiple separated by commas, not left blank, for example: 1.1.1.1, 2.2.2.2
-ip: The ip address of the client currently connected to the proxy. Multiple are separated by commas and not left blank.
+`conns`: is an array, the element is a connection id, this id is the id field of the connection object in conns in the above `Request Description`.
-The connection between the returned user and ip will be disconnected by proxy.
+Introduce:
+- The connection established by the returned user and ip will be disconnected by the proxy.
+- Connections matching the returned conns will be disconnected by the proxy.
+- If the returned data contains both: user or ip, and conns, then the user or ip will be ignored, and only the connection matching conns will be disconnected.
#### Example
Suppose --control-url `http://127.0.0.1:33088/user/control.php` points to a PHP interface address.
@@ -2093,7 +2089,7 @@ foreach ($userArr as $user) {
//logic business, push invalid user into $badUsers
$badUsers[]=$user;
}
-$data=["user"=>implode(","$badUsers),"ip"=>""];
+$data=["user"=>implode(","$badUsers),"ip"=>"","conns"=>[]];
echo json_encode($data);
```
diff --git a/README_ZH.md b/README_ZH.md
index fe31133..4f47894 100644
--- a/README_ZH.md
+++ b/README_ZH.md
@@ -1274,10 +1274,6 @@ nat类型判断,方便查看网络是否支持p2p,可以执行:`proxy tools
SOCKS5代理,支持CONNECT,UDP协议,不支持BIND,支持用户名密码认证。
-***如果你的VPS是阿里云,腾讯云这种VPS,就是ifconfig看不见你的公网IP,只能看见内网IP,***
-
-***那么需要加上`-g VPS公网IP`参数,SOCKS5代理的UDP功能才能正常工作。***
-
***socks5的udp功能默认关闭,可以通过--udp开启,默认是握手随机端口,可以通过固定一个端口提高性能, 通过参数--udp-port 0设置,0代表随机选择一个空闲端口,也可以手动指定一个具体端口。***
### 5.1 普通SOCKS5代理
@@ -1365,16 +1361,12 @@ SOCKS5代理,支持CONNECT,UDP协议,不支持BIND,支持用户名密码
KCP协议需要--kcp-key参数设置一个密码用于加密解密数据
一级HTTP代理(VPS,IP:22.22.22.22)
-`proxy socks -t kcp -p ":38080" --kcp-key mypassword -g 22.22.22.22`
+`proxy socks -t kcp -p ":38080" --kcp-key mypassword`
二级HTTP代理(本地Linux)
`proxy socks -t tcp -p ":8080" -T kcp -P "22.22.22.22:38080" --kcp-key mypassword`
那么访问本地的8080端口就是访问VPS上面的代理端口38080,数据通过kcp协议传输。
-提示:
-
-当本地使用kcp协议时,需要用-g指定vps公网IP,socks5的UDP功能才能正常使用.这时-g是返回给客户端的UDP地址中的IP地址.
-
### 5.9.自定义DNS
--dns-address和--dns-ttl参数,用于自己指定proxy访问域名的时候使用的dns(--dns-address)
@@ -1562,8 +1554,6 @@ rc4-md5-6 , salsa20 , xchacha20
提示:
-当本地使用kcp协议时,需要用-g指定vps公网IP,socks5的UDP功能才能正常使用.这时-g是返回给客户端的UDP地址中的IP地址.
-
ss的udp功能默认关闭,可以通过--ssudp开启。socks5的udp功能默认关闭,可以通过--udp开启,默认是握手随机端口,可以通过固定一个端口提高性能, 通过参数--udp-port
0设置,0代表随机选择一个空闲端口,也可以手动指定一个具体端口。
@@ -1817,6 +1807,11 @@ sps下级,限速100K
- 如果网卡IP发生变化,也会实时生效。
- 可以通过`--bind-refresh`参数,指定刷新本地网卡信息的间隔,默认`5`,单位秒。
+#### 提示
+- sps提供的ss服务的udp功能不支持指定出口IP。
+- sps提供的http(s)/socks5/ss均支持指定出口ip。
+- sps提供的socks5的udp功能支持指定出口ip。
+
### 6.13 证书参数使用base64数据
默认情况下-C,-K参数是crt证书和key文件的路径,
@@ -2077,6 +2072,8 @@ proxy的http(s)/socks5/sps代理API功能,通过`--auth-url`和`--auth-nouser`
`sps` 代理是否是sps提供的,1:是,0:否。
`target` 客户端要访问的目标,如果是http(s)代理,target是访问的具体url;如果是socks5代理,target是空。
+**客户端使用socks5的udp传输时,根据协议,服务端`proxy`会通过`--auth-url`认证两次,一次是tcp,一次是udp。**
+
#### 示例
假设--auth-url http://127.0.0.1:333/auth.php 指向了一个php接口地址.
@@ -2212,23 +2209,31 @@ proxy的http(s)/socks5/sps代理功能支持`控制接口`,可以通过参数`--
#### 控制接口请求说明
-proxy会向控制接口URL发送一个HTTP POST请求,表单数据中有两个字段:user和ip。
+proxy会向控制接口URL发送一个HTTP POST请求,`表单`数据中有三个字段:user、ip、conns,`conns`这个字段需要proxy版本大于等于`12.2`才有。
+
+`user`:当前连接到proxy的用户名,多个使用英文逗号分割,比如:user1,user2
-user:当前连接到proxy的用户名,多个使用英文逗号分割,比如:user1,user2
+`ip`:当前连接到proxy的客户端ip地址,多个使用英文逗号分割,比如:1.1.1.1,2.2.2.2
-ip:当前连接到proxy的客户端ip地址,多个使用英文逗号分割,比如:1.1.1.1,2.2.2.2
+`conns`: 当前所有正在连接到代理端口传输数据的tcp连接信息。conns值是一个json字符串,格式是一个数组,元素是一个对象,对象包含了连接的详细详细,
+conns格式:`[{"id":"ab7bf1f10501d6f7","client":"127.0.0.1:62112","server":"127.0.0.1:9092","user":""}]`
+对象字段说明:id:连接的唯一id,client:客户端IP地址和端口,server:客户端访问的代理IP和端口,user连接对应认证的用户名(如果有的话,没有为空)
#### 控制接口返回数据说明
-控制接口返回的数据是无效的用户和IP,格式是一个json对象数据,有两个字段user和ip。
+控制接口返回的数据是无效的用户和IP或者连接,格式是一个json对象数据,有三个字段user、ip、conns,`conns`这个字段需要proxy版本大于等于`12.2`才有。
+格式:`{"user":"a,b","ip":"",conns:["ab7bf1f10501d6f7","cb7bf1f10501d6f7"]}`
-比如:{"user":"a,b","ip":""}
+`user`:当前连接到proxy的用户名,多个使用英文逗号分割,没有留空,比如:user1,user2
-user:当前连接到proxy的用户名,多个使用英文逗号分割,没有留空,比如:user1,user2
+`ip`:当前连接到proxy的客户端ip地址,多个使用英文逗号分割,没有留空,比如:1.1.1.1,2.2.2.2
-ip:当前连接到proxy的客户端ip地址,多个使用英文逗号分割,没有留空,比如:1.1.1.1,2.2.2.2
+`conns`:是一个数组,元素是一个连接的id,这个id是上面`控制接口请求说明`里面的conns里面的连接对象的id字段。
-返回的用户和ip已经建立的连接会被proxy断开。
+说明:
+- 返回的用户和ip已经建立的连接会被proxy断开。
+- 返回的conns匹配的连接会被proxy断开。
+- 返回的数据,如果同时包含:user或者ip,和conns,那么user或者ip会被忽略,只会断开conns匹配的连接。
#### 示例
@@ -2248,7 +2253,7 @@ foreach ($userArr as $user) {
//逻辑判断用户$user是否无效,如果无效就放入$badUsers
$badUsers[]=$user;
}
-$data=["user"=>implode(","$badUsers),"ip"=>""];
+$data=["user"=>implode(","$badUsers),"ip"=>"","conns"=>[]];
echo json_encode($data);
```
diff --git a/docs/manual/manual.md b/docs/manual/manual.md
index 5644f14..bf62c94 100644
--- a/docs/manual/manual.md
+++ b/docs/manual/manual.md
@@ -954,11 +954,7 @@ Senat type judgment, easy to check whether the network supports p2p, you can exe
## 5.SOCKS5 Proxies
prompt:
-SOCKS5 proxy, support CONNECT, UDP protocol, does not support BIND, supports username and password authentication.
-
-*** If your VPS is Alibaba Cloud, Tencent Cloud is a VPS, if ifconfig can't see your public IP, you can only see the intranet IP, ***
-
-*** Then you need to add the `-g VPS public network IP` parameter, the UDP function of the SOCKS5 proxy can work normally. ***
+SOCKS5 proxy, support CONNECT, UDP protocol, does not support BIND, supports username and password authentication.
***The udp function of socks5 is turned off by default, and can be turned on by `--udp`. The default is a random port for handshake, and performance can be improved by fixing a port.
Set by parameter `--udp-port 0`, `0` represents a free port is randomly selected, or you can manually specify a specific port. ***
@@ -1056,10 +1052,6 @@ Secondary HTTP proxy (local Linux)
`proxy socks -t tcp -p ":8080" -T kcp -P "22.22.22.22:38080" --kcp-key mypassword`
Then access the local port 8080 is to access the proxy port 38080 on the VPS, the data is transmitted through the kcp protocol.
-notice:
-
-When using the kcp protocol locally, you need to specify the vps public network IP with -g, and the UDP function of socks5 is fully used. At this time, -g is the IP address in the UDP address returned to the client.
-
### 5.9. Custom DNS
--dns-address and --dns-ttl parameters, used to specify the dns (--dns-address) used by the proxy to access the domain name.
And the analysis result cache time (--dns-ttl) seconds, to avoid system dns interference to the proxy, in addition to the cache function can also reduce the dns resolution time to improve access speed.
@@ -1225,10 +1217,6 @@ Listen port argument `-p` can be:
-p ":8081,:8082,:9000-9999" listen on 8081 and 8082 and 9000 and 9001 to 9999, 1002 total ports
```
-notice:
-
-When using the kcp protocol locally, you need to specify the vps public network IP with -g, and the UDP function of socks5 is fully used. At this time, -g is the IP address in the UDP address returned to the client.
-
The udp function of ss is turned off by default and can be turned on by `--ssudp`. The udp function of socks5 is turned off by default and can be turned on by `--udp`, The default is a random port for handshake, and performance can be improved by fixing a port.
Set by parameter `--udp-port 0`, `0` represents a free port is randomly selected, or you can manually specify a specific port.
@@ -1846,23 +1834,31 @@ Then this problem can be solved through the control interface. The control inter
#### Request Description
-The proxy sends an HTTP POST request to the control interface URL. There are two fields in the form data: user and ip.
+An HTTP POST request will be sent to the control. The interface `form` has three fields: interface, ip, conns, and the `conns` field requires a user whose proxy version is greater than proxy `12.2`.
-user: the user name currently connected to the proxy, multiple are separated by commas, for example: user1, user2
+`user` The username currently connected to the agent, multiple separated by commas, for example: user1, user2
+
+`ip` The client IP is connected to the proxy, and multiple clients using English are split addresses, for example: 1.1.1.1, 2.2.2.2
-ip: The IP address of the client currently connected to the proxy, multiple are separated by commas, for example: 1.1.1.1, 2.2.2.2
+`conns` The tcp connection information currently connecting to the proxy port to transmit data. The conns value is a json string, the format is a sequence of connections, the element is an object, the object contains the details of the connection,
+conns format: `[{"id":"ab7bf1f10501d6f7","client":"127.0.0.1:62112","server":"127.0.0.1:9092","user":""}]`
+Object field description: id: connection id, client: client's unique IP address and port, server: client's IP and no port access, user's connection authentication (null if any)
#### Response Data Description
-The data returned by the control interface is invalid user and IP, the format is a json object data, there are two fields user and ip.
+The data returned by the control interface is invalid user and IP or connection. The format is a json object data. There are three fields user, ip, and conns. The `conns` field requires the proxy version greater than or equal to `12.2`.
+Format: `{"user":"a,b","ip":"",conns:["ab7bf1f10501d6f7","cb7bf1f10501d6f7"]}`
-For example: {"user": "a, b", "ip": ""}
+`user`: The username currently connected to the proxy, multiple separated by commas, not left blank, for example: user1, user2
-user: the user name currently connected to the proxy, multiple are separated by commas, not left blank, for example: user1, user2
+`ip`: The ip address of the client currently connected to the proxy, multiple separated by commas, not left blank, for example: 1.1.1.1, 2.2.2.2
-ip: The ip address of the client currently connected to the proxy. Multiple are separated by commas and not left blank.
+`conns`: is an array, the element is a connection id, this id is the id field of the connection object in conns in the above `Request Description`.
-The connection between the returned user and ip will be disconnected by proxy.
+Introduce:
+- The connection established by the returned user and ip will be disconnected by the proxy.
+- Connections matching the returned conns will be disconnected by the proxy.
+- If the returned data contains both: user or ip, and conns, then the user or ip will be ignored, and only the connection matching conns will be disconnected.
#### Example
Suppose --control-url `http://127.0.0.1:33088/user/control.php` points to a PHP interface address.
@@ -1881,7 +1877,7 @@ foreach ($userArr as $user) {
//logic business, push invalid user into $badUsers
$badUsers[]=$user;
}
-$data=["user"=>implode(","$badUsers),"ip"=>""];
+$data=["user"=>implode(","$badUsers),"ip"=>"","conns"=>[]];
echo json_encode($data);
```
diff --git a/docs/manual/zh/manual.md b/docs/manual/zh/manual.md
index 114bcb2..27ed433 100644
--- a/docs/manual/zh/manual.md
+++ b/docs/manual/zh/manual.md
@@ -1048,10 +1048,6 @@ nat类型判断,方便查看网络是否支持p2p,可以执行:`proxy tools
SOCKS5代理,支持CONNECT,UDP协议,不支持BIND,支持用户名密码认证。
-***如果你的VPS是阿里云,腾讯云这种VPS,就是ifconfig看不见你的公网IP,只能看见内网IP,***
-
-***那么需要加上`-g VPS公网IP`参数,SOCKS5代理的UDP功能才能正常工作。***
-
***socks5的udp功能默认关闭,可以通过--udp开启,默认是握手随机端口,可以通过固定一个端口提高性能, 通过参数--udp-port 0设置,0代表随机选择一个空闲端口,也可以手动指定一个具体端口。***
### 5.1 普通SOCKS5代理
@@ -1139,16 +1135,12 @@ SOCKS5代理,支持CONNECT,UDP协议,不支持BIND,支持用户名密码
KCP协议需要--kcp-key参数设置一个密码用于加密解密数据
一级HTTP代理(VPS,IP:22.22.22.22)
-`proxy socks -t kcp -p ":38080" --kcp-key mypassword -g 22.22.22.22`
+`proxy socks -t kcp -p ":38080" --kcp-key mypassword`
二级HTTP代理(本地Linux)
`proxy socks -t tcp -p ":8080" -T kcp -P "22.22.22.22:38080" --kcp-key mypassword`
那么访问本地的8080端口就是访问VPS上面的代理端口38080,数据通过kcp协议传输。
-提示:
-
-当本地使用kcp协议时,需要用-g指定vps公网IP,socks5的UDP功能才能正常使用.这时-g是返回给客户端的UDP地址中的IP地址.
-
### 5.9.自定义DNS
--dns-address和--dns-ttl参数,用于自己指定proxy访问域名的时候使用的dns(--dns-address)
@@ -1336,8 +1328,6 @@ rc4-md5-6 , salsa20 , xchacha20
提示:
-当本地使用kcp协议时,需要用-g指定vps公网IP,socks5的UDP功能才能正常使用.这时-g是返回给客户端的UDP地址中的IP地址.
-
ss的udp功能默认关闭,可以通过--ssudp开启。socks5的udp功能默认关闭,可以通过--udp开启,默认是握手随机端口,可以通过固定一个端口提高性能, 通过参数--udp-port
0设置,0代表随机选择一个空闲端口,也可以手动指定一个具体端口。
@@ -1591,6 +1581,11 @@ sps下级,限速100K
- 如果网卡IP发生变化,也会实时生效。
- 可以通过`--bind-refresh`参数,指定刷新本地网卡信息的间隔,默认`5`,单位秒。
+#### 提示
+- sps提供的ss服务的udp功能不支持指定出口IP。
+- sps提供的http(s)/socks5/ss均支持指定出口ip。
+- sps提供的socks5的udp功能支持指定出口ip。
+
### 6.13 证书参数使用base64数据
默认情况下-C,-K参数是crt证书和key文件的路径,
@@ -1851,6 +1846,8 @@ proxy的http(s)/socks5/sps代理API功能,通过`--auth-url`和`--auth-nouser`
`sps` 代理是否是sps提供的,1:是,0:否。
`target` 客户端要访问的目标,如果是http(s)代理,target是访问的具体url;如果是socks5代理,target是空。
+**客户端使用socks5的udp传输时,根据协议,服务端`proxy`会通过`--auth-url`认证两次,一次是tcp,一次是udp。**
+
#### 示例
假设--auth-url http://127.0.0.1:333/auth.php 指向了一个php接口地址.
@@ -1986,23 +1983,31 @@ proxy的http(s)/socks5/sps代理功能支持`控制接口`,可以通过参数`--
#### 控制接口请求说明
-proxy会向控制接口URL发送一个HTTP POST请求,表单数据中有两个字段:user和ip。
+proxy会向控制接口URL发送一个HTTP POST请求,`表单`数据中有三个字段:user、ip、conns,`conns`这个字段需要proxy版本大于等于`12.2`才有。
+
+`user`:当前连接到proxy的用户名,多个使用英文逗号分割,比如:user1,user2
-user:当前连接到proxy的用户名,多个使用英文逗号分割,比如:user1,user2
+`ip`:当前连接到proxy的客户端ip地址,多个使用英文逗号分割,比如:1.1.1.1,2.2.2.2
-ip:当前连接到proxy的客户端ip地址,多个使用英文逗号分割,比如:1.1.1.1,2.2.2.2
+`conns`: 当前所有正在连接到代理端口传输数据的tcp连接信息。conns值是一个json字符串,格式是一个数组,元素是一个对象,对象包含了连接的详细详细,
+conns格式:`[{"id":"ab7bf1f10501d6f7","client":"127.0.0.1:62112","server":"127.0.0.1:9092","user":""}]`
+对象字段说明:id:连接的唯一id,client:客户端IP地址和端口,server:客户端访问的代理IP和端口,user连接对应认证的用户名(如果有的话,没有为空)
#### 控制接口返回数据说明
-控制接口返回的数据是无效的用户和IP,格式是一个json对象数据,有两个字段user和ip。
+控制接口返回的数据是无效的用户和IP或者连接,格式是一个json对象数据,有三个字段user、ip、conns,`conns`这个字段需要proxy版本大于等于`12.2`才有。
+格式:`{"user":"a,b","ip":"",conns:["ab7bf1f10501d6f7","cb7bf1f10501d6f7"]}`
-比如:{"user":"a,b","ip":""}
+`user`:当前连接到proxy的用户名,多个使用英文逗号分割,没有留空,比如:user1,user2
-user:当前连接到proxy的用户名,多个使用英文逗号分割,没有留空,比如:user1,user2
+`ip`:当前连接到proxy的客户端ip地址,多个使用英文逗号分割,没有留空,比如:1.1.1.1,2.2.2.2
-ip:当前连接到proxy的客户端ip地址,多个使用英文逗号分割,没有留空,比如:1.1.1.1,2.2.2.2
+`conns`:是一个数组,元素是一个连接的id,这个id是上面`控制接口请求说明`里面的conns里面的连接对象的id字段。
-返回的用户和ip已经建立的连接会被proxy断开。
+说明:
+- 返回的用户和ip已经建立的连接会被proxy断开。
+- 返回的conns匹配的连接会被proxy断开。
+- 返回的数据,如果同时包含:user或者ip,和conns,那么user或者ip会被忽略,只会断开conns匹配的连接。
#### 示例
@@ -2022,7 +2027,7 @@ foreach ($userArr as $user) {
//逻辑判断用户$user是否无效,如果无效就放入$badUsers
$badUsers[]=$user;
}
-$data=["user"=>implode(","$badUsers),"ip"=>""];
+$data=["user"=>implode(","$badUsers),"ip"=>"","conns"=>[]];
echo json_encode($data);
```
diff --git a/docs/sitemap.xml b/docs/sitemap.xml
index 9facd59..5ae94c9 100644
--- a/docs/sitemap.xml
+++ b/docs/sitemap.xml
@@ -18,31 +18,31 @@