19-Web Cache命令
本章节下载: 19-Web Cache命令 (626.77 KB)
目 录
1.1.16 clear web-cache cached-data
1.1.18 display web-cache cached-data
1.1.19 display web-cache cached-data clear-refresh history
1.1.20 display web-cache cache-path
1.1.21 display web-cache deny-list
1.1.22 display web-cache precache status
1.1.32 https ssl certificate directory
1.1.33 https ssl certificate domain-name
1.1.38 querystring-file-cache enable
1.1.39 refresh web-cache cached-data
1.1.40 transparent-proxy keepalive enable
1.1.43 web-cache prebuilt config-file
1.1.45 web-cache precache import url
1.1.46 web-cache precache login-url
1.1.47 web-cache precache username
backup命令用来配置Web Cache的备用slot。
undo backup命令用来恢复缺省情况。
【命令】
backup slot slot-number
undo backup
【缺省情况】
未配置Web Cache的备用slot。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
slot slot-number:指定单板。slot-number为单板所在的槽位号。
【使用指导】
为了增强Web Cache功能的可靠性,设备支持配置Web Cache主用slot和备用slot,用来实现Web Cache的主备功能。配置Web Cache功能时,需要先使用web-cache命令进入web-cache视图,web-cache命令中指定的slot为Web Cache功能的主用slot。backup命令配置的是Web Cache的备用slot。正常情况下由Web Cache主用slot对外提供Web Cache服务。当主用slot发生故障时,备用slot上的Web Cache进程接替主用slot上的Web Cache进程继续对外提供Web Cache服务,以便保证Web Cache服务不中断。当主用slot修复且备用slot故障时,Web Cache服务才切换回主用slot。
【举例】
# 配置Web Cache备用slot。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] backup slot 2
cached-data命令用来配置允许缓存Web页面上的文件类型。
undo cached-data命令用来恢复缺省情况。
【命令】
cached-data { apk | bmp | doc | docx | gif | gzip | ipa | jar | jpg | jpeg | mp4 | pdf | png | ppt | pptx | rar | swf | tar | txt | xls | xlsx | zip } *
undo cached-data
【缺省情况】
Web Cache可以缓存Web页面上的所有文件。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
apk:表示apk文件类型。
bmp:表示bmp文件类型。
doc:表示doc文件类型。
docx:表示docx文件类型。
gif:表示gif文件类型。
gzip:表示gzip文件类型。
ipa:表示ipa文件类型。
jar:表示jar文件类型。
jpg:表示jpg文件类型。
jpeg:表示jpeg文件类型。
mp4:表示mp4文件类型。
pdf:表示pdf文件类型。
png:表示png文件类型。
ppt:表示ppt文件类型。
pptx:表示pptx文件类型。
rar:表示rar文件类型。
swf:表示swf文件类型。
tar:表示tar文件类型。
txt:表示txt文件类型。
xls:表示xls文件类型。
xlsx:表示xlsx文件类型。
zip:表示zip文件类型。
【使用指导】
缺省情况下,Web Cache可以缓存Web页面上的所有文件。通过配置本命令,可对Web Cache能缓存的文件进行过滤。
修改允许缓存Web页面内容的文件扩展名前,需要关闭Web Cache功能,完成修改后再次开启。
【举例】
# 配置允许缓存Web页面上文件类型为doc和docx的内容。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cached-data doc docx
【相关命令】
· http enable
· https enable
cached-data aging-time命令用来配置Web Cache缓存文件的老化时间。
undo cached-data aging-time命令用来恢复缺省情况。
【命令】
cached-data aging-time aging-time
undo cached-data aging-time
【缺省情况】
Web Cache缓存文件的老化时间为1440分钟。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
aging-time:Web Cache缓存文件的老化时间,取值范围为60~43200,单位为分钟。
【使用指导】
为了节省设备的存储空间,Web Cache缓存文件如果长时间未被用户请求,则会被设备删除,这一段时间被称为Web Cache缓存文件的老化时间。通过本命令可以修改Web Cache文件的老化时间:
· 如果设备的存储空间资源富余,可以配置较长的老化时间。
· 如果设备的存储空间资源紧张,可以配置较短的老化时间。
【举例】
# 配置Web Cache缓存文件的老化时间为1572分钟。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cached-data aging-time 1572
# 在缓存策略模板document的视图下,配置Web Cache缓存文件的老化时间为1572分钟。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-profile document
[Sysname-web-cache-slot1-profile-document] cached-data aging-time 1572
cached-data exclude命令用来配置Web Cache不允许缓存的文件。
undo cached-data exclude命令用来恢复缺省情况。
【命令】
cached-data exclude { acp | ashx | asp | cgi | chk | chm | eml | ephtml | html | json | php | phtml | shtml | ska | tmp | filename-keyword keyword }
undo cached-data exclude [ acp | ashx | asp | cgi | chk | chm | eml | ephtml | html | json | php | phtml | shtml | ska | tmp | filename-keyword keyword ]
【缺省情况】
Web Cache可以缓存所有文件。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
acp:表示文件名中包含acp的文件,区分大小写。
ashx:表示文件名中包含ashx的文件,区分大小写。
asp:表示文件名中包含asp的文件,区分大小写。
cgi:表示文件名中包含cgi的文件,区分大小写。
chk:表示文件名中包含chk的文件,区分大小写。
chm:表示文件名中包含chm的文件,区分大小写。
eml:表示文件名中包含eml的文件,区分大小写。
ephtml:表示文件名中包含ephtml的文件,区分大小写。
html:表示文件名中包含html的文件,区分大小写。
json:表示文件名中包含json的文件,区分大小写。
php:表示文件名中包含php的文件,区分大小写。
phtml:表示文件名中包含phtml的文件,区分大小写。
shtml:表示文件名中包含shtml的文件,区分大小写。
ska:表示文件名中包含ska的文件,区分大小写。
tmp:表示文件名中包含tmp的文件,区分大小写。
filename-keyword:表示Web Cache不允许缓存文件名中包含有指定关键字的文件。
keyword:Web Cache不允许缓存的文件名中包含的关键字,为1~127个字符的字符串,区分大小写。keyword的取值不能为acp、ashx、asp、cgi、chk、chm、eml、ephtml、html、json、php、phtml、shtml、ska和tmp。
【使用指导】
缺省情况下,设备可以缓存Web页面上的所有文件。为了节省设备的存储空间,可以通过本命令设置Web Cache不允许缓存的文件类型或文件。
多次执行本命令,可以设置多个Web Cache不允许缓存的文件类型和文件,最多支持64个不允许缓存的文件类型和文件。
如果Web Cache功能处于开启状态,请先关闭Web Cache功能,再配置本命令,然后重新开启Web Cache功能。
cached-data exclude命令和cached-data、cached-file以及cached-extension-name命令互斥,请不要同时配置。
【举例】
# 配置Web Cache不允许缓存json类型的文件。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cached-data exclude json
# 配置Web Cache不允许缓存文件名中包含abc的文件。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cached-data exclude filename-keyword abc
【相关命令】
· cached-data
· cached-extension-name
· cached-file
cached-data valid-time命令用来配置缓存有效时间。
undo cached-data valid-time命令用来恢复缺省情况。
【命令】
cached-data valid-time { http-status-codes | any } valid-time
undo cached-data valid-time { http-status-codes | any }
【缺省情况】
未配置缓存有效时间。
【视图】
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
http-status-codes:配置指定HTTP状态码的缓存的有效时间,取值范围为100~599。
any:配置除了http-status-codes参数指定的状态码以外的所有缓存的有效时间。
valid-time:缓存有效时间。取值范围为0~43200,单位为分钟。
【使用指导】
本命令用于设置Web Cache设备上缓存的最大有效期时间。通过合理配置缓存有效时间,可以在提升系统响应速度和降低Web服务器压力的同时,确保用户获取到较为新鲜的数据。
设置缓存有效时间后,当客户端发起请求时:
· 如果Web Cache的缓存中已经有该请求对应的数据,且该数据的存放时间还没有超过设定的有效时间值,则Web Cache设备会直接返回已缓存的数据,以减轻Web服务器的压力。
· 如果缓存的数据已经存放超过指定的有效时长,则再收到客户端的新请求时,Web Cache设备会重新请求Web服务器,用后端返回的新数据来验证缓存是否仍然有效,并根据新数据更新缓存内容。
对于频繁更新的资源,建议设置较短的有效时间,对于长期不变的静态资源,建议设置较长的有效时间。
【举例】
# 在缓存策略模板document的视图下,配置状态码为200的缓存失效时间为60分钟。
<sysname> system-view
[sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-profile document
[sysname-web-cache-slot1-profile-document] cached-data valid-time 200 60
cached-extension-name命令用来配置Web Cache允许缓存的文件扩展名。
undo cached-extension-name命令用来取消配置Web Cache允许缓存的文件扩展名。
【命令】
cached-extension-name extension-name
undo cached-extension-name [ extension-name ]
【缺省情况】
Web Cache可以缓存Web页面上的所有文件。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
extension-name:Web Cache允许缓存的文件扩展名,为1~16个字符的字符串,区分大小写,字符串中可以包含字母、数字、“_”和“-”。
【使用指导】
当cached-data命令配置的文件类型不能满足需求时,可通过本命令添加缓存文件类型。多次执行本命令,可配置多个文件扩展名,最多可配置64个。
配置本命令前,需要关闭Web Cache功能,完成修改后再次开启。
如果同时配置本命令、cached-file命令和cached-data命令,设备优先使用文件名完全匹配,再通过文件扩展名匹配。满足上述任一命令配置的文件都可以被缓存,优先使用文件名进行完全匹配。
【举例】
# 配置允许缓存Web页面上的文件扩展名为cab的内容。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cached-extension-name cab
【相关命令】
· cached-data
· cached-file
cached-file命令用来指定Web Cache允许缓存的文件。
undo cached-file命令用来取消Web Cache允许缓存指定的文件或恢复缺省情况。
【命令】
cached-file file-name
undo cached-file [ file-name ]
【缺省情况】
Web Cache可以缓存Web页面上的所有文件。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
file-name:Web Cache允许缓存的文件完整名称。包括文件类型后缀,为1~127个字符的字符串,区分大小写。
【使用指导】
多次执行本命令,可允许缓存多个文件。
如果同时配置本命令和cached-data命令,设备优先使用文件名完全匹配,再通过文件类型匹配,满足本命令和cached-data命令的文件都可以被缓存。
增加、删除允许缓存的文件名前,需要关闭Web Cache功能,完成修改后再次开启。
配置undo cached-file命令后,已缓存在Web Cache工作路径的Web Cache缓存文件不会被删除。
【举例】
# 配置Web Cache允许缓存的文件为test1.doc。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cached-file test1.doc
【相关命令】
· cached-data
cache-block size命令用来将Web Cache缓存分片。
undo cache-block size命令用来恢复缺省情况。
【命令】
cache-block size { 1 | 2 | 4 | 8 | 16 | 32 | 64 }
undo cache-block size
【缺省情况】
缓存不分片。
【视图】
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
1:将缓存按照1MB进行分片。
2:将缓存按照2MB进行分片。
4:将缓存按照4MB进行分片。
8:将缓存按照8MB进行分片。
16:将缓存按照16MB进行分片。
32:将缓存按照32MB进行分片。
64:将缓存按照64MB进行分片。
【使用指导】
web-cache在处理为较大的缓存内容时,需要把缓存内容分片。通过该命令行,可以配置document缓存策略下的分片大小。当缓存内容比分片更小时,缓存不分片。
【举例】
# 在缓存策略模板document的视图下,配置缓存的分片大小为2MB。
<sysname> system-view
[sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-profile document
[sysname-web-cache-slot1-profile-document] cache-block size 2
cache-ignore命令用来配置Web Cache忽略指定的HTTP/HTTPS响应头类型。
undo cache-ignore命令用来恢复缺省情况。
【命令】
cache-ignore { cache-control | set-cookie | vary } *
undo cache-ignore [ cache-control | set-cookie | vary ] *
【缺省情况】
Web服务器返回的HTTP/HTTPS响应头类型影响Web Cache服务是否缓存资源。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
cache-control:Web Cache忽略Cache-Control响应头。
set-cookie:Web Cache忽略Set-Cookie响应头。
vary:Web Cache忽略Vary响应头。
【使用指导】
Cache-Control、Set-Cookie以及Vary响应头,对Web Cache服务缓存Web资源的影响如下:
· Web服务器返回的HTTP/HTTPS响应报文中携带Cache-Control响应头时,根据Cache-Control响应头包含的指令,Web Cache可能不会缓存本次请求的Web资源。
· Web服务器返回的HTTP/HTTPS响应报文中携带Set-Cookie响应头时,Web Cache不会缓存本次请求的Web资源。
· Web服务器返回的HTTP/HTTPS响应报文中携带Vary响应头时,根据Vary消息的取值,Web Cache可能不会缓存本次请求的Web资源。
配置本命令后,Web Cache会忽略指定的响应头类型,以确保能够缓存用户请求的Web资源。
【举例】
# 在slot 1上,配置Web Cache忽略Cache-Control响应头以及Vary响应头。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-ignore cache-control vary
# 在缓存策略模板document的视图下,配置Web Cache忽略Cache-Control响应头以及Vary响应头。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-profile document
[Sysname-web-cache-slot1-profile-document] cache-ignore cache-control vary
cache-key命令用来配置缓存的命中规则。
undo cache-key命令用来恢复缺省情况。
【命令】
cache-key { ignore-all-args | with-all-args | { specify-args custom-args&<1-10> } }
undo cache-key
【缺省情况】
缺省配置为忽略全部参数。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
ignore-all-args:忽略全部参数,效果为同一路径的请求,无论参数如何,都被视为同一个缓存对象。
with-all-args:匹配全部参数,效果为只要参数不同,就认为是不同的缓存对象。
specify-args custom-args:匹配自定义参数,效果为只将用户指定参数视为区分缓存对象的依据,其他参数忽略。custom-args表示自定义参数,为1~31个字符的字符串。建议配置英文字母等常用字符。
&<1-10>:表示前面的参数可以重复配置1~10次。
【使用指导】
Web Cache存在多种可缓存的资源过滤规则,为了灵活控制资源的可缓存命中率,可以通过本命令配置缓存的命中规则。通过合理设置哪些请求被认为是“相同资源”,可以让更多用户请求命中缓存,减少重复回源,提高系统响应速度和带宽利用率。并且如果不同参数的请求实际上内容不同,却被错误地缓存为同一份内容,用户就会看到不正确的数据。通过细化匹配规则,可以保证内容的准确性。
【举例】
# 在web-cache视图下,配置缓存的命中规则为匹配全部参数。
<sysname> system-view
[sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-key with-all-args
# 在缓存策略模板document的视图下,配置缓存的命中规则为匹配全部参数。
<sysname> system-view
[sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-profile document
[sysname-web-cache-slot1-profile-document] cache-key with-all-args
cache-keys-zone命令用来配置缓存键最大可用空间。
undo cache-keys-zone命令用来恢复缺省情况。
【命令】
cache-keys-zone size
undo cache-keys-zone
【缺省情况】
缓存键最大可用空间为50MB。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
size:缓存键最大可用空间,取值范围为50~4096,单位为MB。
【使用指导】
每个Web Cache的缓存对象都会有一个缓存键(cache key),用来唯一标识和检索该缓存对象。缓存键最大可用空间是指设备上专门用于保存所有缓存键及其索引信息的空间最大总量。缓存键最大可用空间占满时,新增的缓存键会覆盖最久未用的缓存键。
当出现缓存键数量大幅增加、缓存命中率下降、缓存条目频繁被清理时,建议通过本命令适当增大缓存键的最大可用空间。
【举例】
# 在web-cache视图下,配置缓存键的最大可用空间为100MB。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-keys-zone 100
# 在缓存策略模板document的视图下,配置缓存键的最大可用空间为100MB。
<sysname> system-view
[sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-profile document
[sysname-web-cache-slot1-profile-document] cache-keys-zone 100
cache-limit命令用来配置所有Web Cache缓存文件的总大小的最大值。
undo cache-limit命令用来恢复缺省情况。
【命令】
cache-limit size
undo cache-limit
【缺省情况】
所有Web Cache缓存文件的总大小的最大值为4GB。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
size:所有Web Cache缓存文件的总大小的最大值,取值范围为1~4095,缺省值为4,单位为GB。
【使用指导】
指定所有Web Cache缓存文件的总大小的最大值必须小于工作路径中可存储数据的最大值。
用户可以通过display web-cache命令查看缓存允许存储的最大空间。当缓存文件超出缓存允许存储的最大空间后,会使用最新的缓存文件将覆盖最旧的缓存文件。
Web Cache缓存文件的老化时间为三十天。设备收到相同请求或重启时,会重新计算老化时间。如果在老化时间内,没有用户请求该缓存文件,该缓存文件将会被删除。
修改所有Web Cache缓存文件的总大小的最大值前,需要关闭Web Cache功能,完成修改后再次开启。
【举例】
# 配置Web Cache缓存文件大小的最大值为3GB。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-limit 3
# 在缓存策略模板document的视图下,配置Web Cache缓存文件大小的最大值为3GB。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-profile document
[Sysname-web-cache-slot1-profile-document] cache-limit 3
cache-min-uses命令用来配置Web Cache缓存的最小访问次数以及缓存键的老化时间。
undo cache-min-uses命令用来恢复缺省情况。
【命令】
cache-min-uses hit-count [ aging-time aging-time ]
undo cache-min-uses
【缺省情况】
未配置缓存的最小访问次数以及缓存键老化时间。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
hit-count:缓存最小访问次数,取值范围为2~10。
aging-time aging-time:缓存老化时间,aging-time的取值范围为60~1440,单位为分钟,缺省值为1440。
【使用指导】
如果Web Cache缓存请求量较低的资源,会造成设备存储空间的浪费,因此可以设置缓存的最小访问次数。只有当某个资源被客户端请求的次数达到设定的最小访问次数时,Web Cache系统才会将该资源缓存在本地;否则,该资源的内容不会被缓存,后续请求仍需向Web服务器获取。
为了避免不活跃的缓存键持续占用Web Cache设备的内存空间,可以设置缓存键的老化时间。如果在老化时间内某个缓存资源都未达到最小访问次数,则设备会删除内存中的此缓存键。
【举例】
# 在web-cache视图下,配置缓存的最小访问次数为2次,老化时间为60分钟。
<sysname> system-view
[sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-min-uses 2 aging-time 60
# 在document缓存策略模板的视图下,配置缓存的最小访问次数为2次,老化时间为60分钟。
<sysname> system-view
[sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-profile document
[sysname-web-cache-slot1-profile-document] cache-min-uses 2 aging-time 60
cache-profile命令用来创建Web Cache缓存策略模板,并进入Web Cache缓存策略模板视图。如果指定的Web Cache缓存策略模板已经存在,则直接进入Web Cache缓存策略模板视图。
undo cache-profile用来删除指定的Web Cache缓存策略模板,并删除对应Web Cache缓存策略模板视图下的所有配置。
【命令】
cache-profile profile-name
undo cache-profile profile-name
【缺省情况】
不存在Web Cache缓存策略模板。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
profile-name:缓存策略模板名称,为1~31个字符的字符串,区分大小写。
【使用指导】
在缓存策略模板视图下可以配置一些Web Cache缓存行为相关策略,以方便用户按需定制个性化的缓存控制方案,扩展Web Cache功能的适用场景。
cache-profile命令不能和cached-data exclude命令同时配置。
可通过多次执行cache-profile命令,创建多个Web Cache缓存策略模板,最多支持创建1024个Web Cache缓存策略模板。
【举例】
# 创建Web Cache缓存策略模板,并进入Web Cache缓存策略模板视图。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-profile document
[Sysname-web-cache-slot1-profile-document]
cache-valid interval命令用来配置强制缓存的有效时间。
undo cache-valid interval命令用来恢复缺省情况。
【命令】
cache-valid interval interval
undo cache-valid interval
【缺省情况】
未配置强制缓存的有效时间。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
interval:强制缓存的有效时间,取值范围为1~43200,单位为分钟。
【使用指导】
在正常情况下,HTTP响应头中通常会包含源站设置的缓存有效时间,例如,Cache-Control: max-age=3600表示该资源的缓存有效时间为3600秒。在有效期内,Web Cache 设备会直接使用本地缓存数据对用户的HTTP/HTTPS请求进行响应,无需再次向Web服务器请求。
然而,如果源站设置的有效时间过长,而资源在此期间发生了更新,用户可能会在较长时间内访问到过期的旧资源。
为了解决这一问题,可以通过本命令配置“强制缓存有效时间”。配置后,Web Cache 会将源站有效时间和强制缓存有效时间中的较小值作为最终有效时间。这样,即使源站设置了较长的有效时间,Web Cache 也能及时刷新缓存,确保用户能够尽快访问到最新的资源。
【举例】
# 在web-cache视图下,配置强制缓存的有效时间为1440分钟。
<Sysname> system-view
[Sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-valid interval 1440
# 在缓存策略模板document的视图下,配置强制缓存的有效时间为1440分钟。
<Sysname> system-view
[Sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-profile document
[sysname-web-cache-slot1-profile-document] cache-valid interval 1440
clear web-cache cached-data命令用来清除Web Cache的本地缓存数据。
【命令】
clear web-cache cached-data { all | contents contents | domain-name domain-name | regular-expression regular-expression | url url-string }
【视图】
用户视图
【缺省用户角色】
network-admin
【参数】
all:清除全部本地缓存数据。
contents contents:清除来自指定资源路径的缓存数据。contents表示资源路径,为1~255个字符的字符串,不区分大小写。
domain-name domain-name:清除来自指定域名的缓存数据。domain-name表示域名,为1~255个字符的字符串,不区分大小写。
regular-expression regular-expression:清除来源URL满足指定正则表达式的缓存数据。regular-expression表示正则表达式,为1~255个字符的字符串,区分大小写。
url url-string:清除来自指定URL的缓存数据,url-string表示URL,为1~255个字符的字符串。
【使用指导】
当Web Cache设备上的本地缓存尚未过期,而Web服务器上的资源已经被更新时,客户端会从Web Cache设备获取到过时的资源。为了解决这一问题,网络管理员可以手动执行本命令,清除Web Cache设备上的本地缓存。这样,用户后续请求该资源时,Web Cache设备会从Web服务器重新获取最新的资源并返回给用户,确保用户访问到的是最新内容。
【举例】
# 清除Web Cache设备上全部本地缓存数据。
<Sysname> clear web-cache cached-data all
# 清除Web Cache设备上指定目录的缓存数据。
<Sysname> clear web-cache cached-data contents www.example.com/dir1
# 清除Web Cache设备上指定域名的缓存数据。
<Sysname> clear web-cache cached-data domain www.example.com
# 清除Web Cache设备上URL满足指定正则表达式的缓存数据。
<Sysname> clear web-cache cached-data regular-expression \\.(exe|zip)$
# 清除Web Cache设备上来自指定URL的缓存数据。
<Sysname> clear web-cache cached-data url www.example.com/dir1/test.txt
display web-cache命令用来显示Web Cache的统计信息。
【命令】
display web-cache [ history ] [ last { day | 30-days | 365-days | hour | minute | week } | verbose ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
history:显示Web Cache的每秒统计信息。如果未指定本参数,将显示历史统计信息。
last:显示过去一段时间内Web Cache的统计信息。如果不指定last参数,则显示当前的统计信息,以及过去各时间点的统计信息。
minute:显示过去1分钟的Web Cache的统计信息
hour:显示过去1小时的Web Cache的统计信息。
day:显示过去1天的Web Cache的统计信息。
week:显示过去1周的Web Cache的统计信息。
30-days:显示过去30天的Web Cache的统计信息。
365-days:显示过去365天的Web Cache的统计信息。
verbose:显示详细信息。如果未指定本参数,将显示简要信息。
【举例】
# 显示Web Cache的每秒统计信息。
<Sysname>display web-cache history
Date TimeRange ConnectTop CacheTop BandwidthSaved CacheHitRate
2020/04/20 14:43:02-14:43:03 3 16.0KB 0 0%
2020/04/20 14:43:01-14:43:02 3 16.0KB 96.0Kbps 100%
# 显示Web Cache的历史统计信息。
<Sysname> display web-cache
Web-cache configurations
Cache path: flash:/var/web-cache/proxy
Max connections: 1022
Max cache size: 3GB
Current state information
Cache memory: 0
Cache count: 0
Statistics
ConnectTop: 2
CacheTop: 0
Bandwidth saved: 0
Cached data transmission speed: 0
Cached data transmitted: 0
Download speed: 0
Download size: 0
CacheHitRate: 0%
Hit count: 0 Miss count: 0
# 显示Web Cache的每秒详细统计信息。
<Sysname> display web-cache history verbose
2020/04/05 09:02:47-09:02:48
ConnectTop: 2
CacheTop: 0
Bandwidth saved: 0
Cached data transmission speed: 0
Cached data transmitted: 0
Download speed: 0
Download size: 0
CacheHitRate: 0%
Hit count: 0 Miss count: 0
2020/04/05 09:02:46-09:02:47
ConnectTop: 2
CacheTop: 0
Bandwidth saved: 0
Cached data transmission speed: 0
Cached data transmitted: 0
Download speed: 0
Download size: 0
CacheHitRate: 0%
Hit count: 0 Miss count: 0
表1-1 display web-cache命令显示信息描述表
|
字段 |
描述 |
|
|
Cache path |
全局缓存存储路径的上一级路径。如果多个缓存存储路径的上一级路径不一致,则显示系统读取到的第一个缓存存储路径的上一级路径 |
|
|
Max connections |
允许的最大连接数 |
|
|
Max cache size |
所有缓存存储路径的最大可用空间之和 |
|
|
Cache memory |
当前所有缓存文件已占用空间 |
|
|
Cache count |
所有缓存存储路径下的缓存文件总个数 |
|
|
Statistics |
Web Cache统计信息 |
|
|
Statistics for past 1 minute |
过去1分钟内Web Cache的统计信息 |
|
|
Statistics for past 1 hour |
过去1小时内Web Cache的统计信息 |
|
|
Statistics for past 1 day |
过去1天内Web Cache的统计信息 |
|
|
Statistics for past 30 days |
过去30天内Web Cache的统计信息 |
|
|
Statistics for past 365 days |
过去365天内Web Cache的统计信息 |
|
|
ConnectTop |
指定时间范围内连接数的最大值 |
|
|
CacheTop |
指定时间范围内所有缓存文件占用空间总和的最大值,单位为MB |
|
|
Bandwidth saved |
指定时间范围内节约带宽数,单位是Kbps、Mbps、Gbps或Tbps |
|
|
Cached data transmission speed |
指定时间范围内向用户传输已缓存数据的速度,单位是Kbps、Mbps、Gbps或Tbps |
|
|
Cached data transmitted |
指定时间范围内向用户传输已缓存数据的数据量,单位KByte |
|
|
Download speed |
指定时间范围内从服务器下载缓存数据速度,单位是Kbps、Mbps、Gbps或Tbps |
|
|
Download size |
指定时间范围内从服务器下载缓存数据的数据量,单位KByte |
|
|
CacheHitRate |
指定时间范围内缓存命中率 |
|
|
Hit count |
指定时间范围内缓存命中次数 |
|
|
Miss count |
指定时间范围内缓存未命中次数 |
|
display web-cache cached-data命令用来显示Web Cache当前已缓存的文件信息。
【命令】
display web-cache cached-data [ domain-name domain-name ] [ top number | all ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
domain-name domain-name:仅显示从指定域名的Web服务器缓存的文件信息,domain-name由“.”分隔的字符串组成(如example.com),包括“.”在内的总长度不超过255个字符。未指定本参数时,则显示从所有Web服务器缓存的文件信息。
top number:显示指定个数的缓存文件信息,为设备节省的访问数据越多的文件越优先显示。number的取值范围为1~65535。
all:显示全部的缓存文件信息,显示按照该文件节省的数据大小进行排序显示。
【使用指导】
未指定top number和all参数时,设备最多为每个域名显示100个缓存的文件信息。
由于显示内容的限制,无法显示文件名称超过127字节的文件。
【举例】
# 显示Web Cache 当前从所有Web服务器缓存文件的信息。
<Sysname> display web-cache cached-data
Current domain count: 2
Domain: www.abc.example.com
Total saved data: 21MB
Total saved files: 2
Total cached size: 3000MB
FileName HitCount Size HitRate SavedData DeliverySpeed DownloadSpeed
a.txt 3 1000MB 0.75 3000MB 20KB/s 1KB/s
b.txt 1 2000MB 0.5 2000MB 30KB/s 2KB/s
Domain: www.efg.example.com
Total saved data: 24MB
Total saved files: 2
Total cached size: 18000MB
FileName HitCount Size HitRate SavedData DeliverySpeed DownloadSpeed
c.rar 2 8000MB 0.67 16000MB 22KB/s 1KB/s
d.zip 4 10000MB 0.8 80000MB 29KB/s 2KB/s
表1-2 display web-cache cached-data命令显示信息描述表
|
字段 |
描述 |
|
Current domain count |
当前提供了缓存文件的Web服务器总数 |
|
Domain |
Web服务器的域名 |
|
Total saved data |
通过从Web服务器缓存的文件,总共为设备节省的访问数据大小,单位为MB |
|
Total saved files |
从Web服务器缓存的文件总数 |
|
Total cached size |
从Web服务器缓存的文件总大小 |
|
FileName |
缓存文件名 |
|
HitCount |
用户向设备请求该缓存文件且成功的次数 |
|
Size |
缓存文件占用存储空间的大小,单位为字节 |
|
HitRate |
用户向设备请求该缓存文件的命中率,计算方式为(设备成功将该缓存文件响应给用户的次数÷用户向设备请求该缓存文件的次数) |
|
SavedData |
通过该缓存文件,为设备节省的访问数据大小,单位为字节 |
|
DeliverySpeed |
设备最近一次将该缓存文件发送给用户主机时的传输速率,单位为KB/s(Kbyte/s,千字节每秒) |
|
DownloadSpeed |
设备最近一次从Web服务器获取该缓存文件时的传输速率,单位为KB/s(Kbyte/s,千字节每秒) |
display web-cache cached-data clear-refresh history命令用来显示Web Cache的缓存操作历史记录。
【命令】
display web-cache cached-data clear-refresh history
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【使用指导】
目前最多支持显示1000条历史记录,按时间倒序排列。
【举例】
# 显示Web Cache缓存清除和刷新的历史记录。
<Sysname> display web-cache cached-data clear-refresh history
Date Method Type Status Content
2025/07/22 16:02:30 clear URI Waiting www.example.com/1.txt
2025/07/22 16:01:30 refresh URI Executing www.example.com/2.txt
表1-3 display web-cachecached-data history命令显示信息描述表
|
字段 |
描述 |
|
Data |
缓存操作时间 |
|
Method |
缓存操作方式,取值包括: · refresh:刷新缓存 · clear:清除缓存 |
|
Type |
缓存操作类型,取值包括: · all:指定所有文件 · contents:指定目录 · domain-name:指定域名 · regular-expression:指定正则表达式 · URI:指定URI |
|
Status |
· 缓存操作完成情况: · Completed:已完成 · Executing:执行中 · Waiting:等待中 |
|
Content |
缓存内容 |
display web-cache命令用来显示Web Cache的缓存路径信息。
【命令】
display web-cache cache-path
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【举例】
# 显示Web Cache的缓存路径信息。
<Sysname> display web-cache cache-path
Web-cache cache-path information
Cache path: flash:/var/web-cache/proxy/cache1
Max cache size: 3GB
Cache memory: 56.0KB
Cache count: 1
Cache path: flash:/var/web-cache/proxy/cache2
Max cache size: 3GB
Cache memory: 100KB
Cache count: 2
表1-4 display web-cache cache-path命令显示信息描述表
|
字段 |
描述 |
|
Cache path |
Web Cache存放缓存文件的路径 |
|
Max cache size |
缓存路径的最大可用空间 |
|
Cache memory |
缓存路径下已占用空间 |
|
Cache count |
当前缓存路径下缓存文件的个数 |
display web-cache deny-list命令用来显示设备不缓存的Web服务器IP地址列表。
【命令】
display web-cache deny-list { ipv4 | ipv6 } [ aged-ip ]
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【参数】
ipv4:显示设备不缓存的Web服务器IPv4地址列表。
ipv6:显示设备不缓存的Web服务器IPv6地址列表。
aged-ip:显示失效的设备不缓存的Web服务器地址列表,只保留最近的共计100条IPv4和IPv6地址表项。设备不缓存的Web服务器IP地址列表在生成的24小时后就会老化失效。如果未指定本参数,则仅显示仍在生效的表项。
【使用指导】
用户请求设备未缓存过的Web资源时,设备需要向Web服务器发送HTTP/HTTPS请求以获得用户所需的Web资源。由于各种原因,设备向Web服务器请求Web资源并响应至用户的行为可能失败,为了避免反复请求失败造成的设备性能浪费,设备将请求失败的Web服务器的IP地址信息记录下来形成表项,在此表项老化失效之前,设备不会再缓存表项中Web服务器的Web资源。通过本命令可以显示设备不缓存的Web服务器IP地址列表。
【举例】
# 显示设备不缓存的Web服务器IPv4地址信息。
<Sysname> display web-cache deny-list ipv4
IP Time Reason
192.168.1.12 2022/2/22 12:12:30 Client sent duplicate header lines
192.168.2.12 2022/2/22 12:12:30 Parsing request line failed
# 显示设备不缓存的Web服务器IPv6地址信息。
<Sysname> display web-cache deny-list ipv6
IPv6 Time Reason
1::1 2022/2/22 12:12:30 Parsing request line failed
表1-5 display web-cache deny-list命令显示信息描述表
|
字段 |
描述 |
|
IP |
Web服务器的IP地址 |
|
Time |
向Web服务器请求资源失败的时间记录 |
|
Reason |
请求失败的原因,取值包括: · Reading request line timed out:设备读取用户请求行超时 · Domain name requested by client was invalid:用户请求的域名无效 · Parsing request line failed:设备解析请求行失败 · Reading request header timed out:设备读取请求头超时 · Reading request header failed:设备读取请求头失败 · Client sent duplicate header lines:用户发送重复的标题行 · Invalid field existed in HTTP request header:HTTP请求头中存在无效字段 · A field was missing in request:请求报文中字段缺失 · Unknown transmission code existed in request:请求报文中存在未知传输编码 · HTTP request method: TRACE:HTTP请求方法为TRACE · Reading request body timed out:读取请求体超时 · Connecting server failed:连接Web服务器失败 · Sending request to server failed:向Web服务器发送请求失败 · Sending request to server timed out:向Web服务器发送请求超时 · Receiving server response failed:接收Web服务器相应失败 · Handling response header failed:处理冲Web服务器返回的响应头失败 · Inputting filter criterion failed:设备输入过滤条件失败 · Copying header line failed:设备复制标题行失败 · Copying operation field failed:设备复制操作字段失败 · Sending response to client failed:向用户发送响应报文失败 · Testing the predicate failed:测试Predicate代码项失败 · Couldn't generate cache files:无法产生缓存文件 · Client request timed out during HTTP protocol upgrade:在HTTP协议升级期间,客户端请求超时 · Server response timed out during HTTP protocol upgrade:在HTTP协议升级期间,Web服务器响应超时 · Reading server response header timed out:读取来自Web服务器的响应头超时 |
display web-cache precache status命令用来显示Web Cache预缓存的状态信息。
【命令】
display web-cache precache status
本命令的支持情况与设备型号有关,详细说明如下表所示。
|
型号 |
说明 |
|
MSR1008 |
不支持 |
|
MSR1004-G |
不支持 |
|
MSR1004-G-5GCN |
不支持 |
|
MSR1104-G、MSR1104-G-DSL-CAT6 |
不支持 |
|
MSR2630E-X1 |
不支持 |
|
MSR3610E-X1、MSR3610E-X1-DP |
不支持 |
|
MSR3610-G-X3-DP、MSR3610-G-X3、MSR3610-G-X3-DP-DC、 MSR3610-G-X3-DC |
不支持 |
|
MSR3620-G-X3 |
支持 |
|
型号 |
说明 |
|
MSR2660-XS |
不支持 |
|
MSR2680-XS |
不支持 |
|
型号 |
说明 |
|
MSR2600-12X-WiNet |
不支持 |
|
MSR2610-13X-WiNet |
不支持 |
【视图】
任意视图
【缺省用户角色】
network-admin
network-operator
【举例】
# 显示Web Cache预缓存的状态信息。
<Sysname> display web-cache precache status
URL: https://vd2.bdstatic.com/mda-rf83qcww3xr4nbm1/cae_h264/1749436691008940527/mda-rf83qcww3xr4nbm1.mp4
Status (Time): Connect timeout (09:40:35 22/06/2025)
URL:https://lmsn.h3c.com/zhike/lbox/f701241a353f4cf78b074923ea0d97ae/H5GPAAw8zzbJS9taybu/index.mp4
Status (Time): Success (09:40:35 22/06/2025)
表1-6 display web-cache cache-path命令显示信息描述表
|
字段 |
描述 |
|
URL |
预缓存URL |
|
status |
设备访问预缓存URL的结果,取值包括: · Connect timeout:连接超时 · Denied:访问被拒绝 · Success:访问成功 |
|
Time |
设备访问预缓存URL的时间,格式为“时:分:秒 日/月/年” |
dual-gateway-channel命令用来配置与对端设备建立流量互引关系。
undo dual-gateway-channel命令用来取消与对端设备建立的流量互引关系。
【命令】
dual-gateway-channel [ vpn-instance vpn-instance-name ] interface interface-type interface-number peer ipv4-address
undo dual-gateway-channel [ vpn-instance vpn-instance-name ]
【缺省情况】
未与对端设备建立流量互引关系。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
vpn-instance vpn-instance-name:表示指定VPN实例的对端设备,vpn-instance-name为1~31个字符的字符串,区分大小写。指定的VPN实例必须已经创建,如不指定本参数,则指定公网的对端设备。
interface interface-type interface-number:指定与对端设备进行流量互引时使用的通道接口,interface-type interface-number表示接口类型和接口编号。
peer ipv4-address:指定对端设备的IPv4地址,该地址只能为单播地址。
【使用指导】
本命令用于Web Cache双网关场景。在该场景中,两台设备同时为用户提供缓存服务,Web Cache服务的上下行链路均存在等价路径。在该场景中,如果Web Cache的上、下行流量路径不一致,会导致上行流量和下行流量分别在两个不同的网关处理,下行流量无法转发给用户,用户访问Web资源失败。
通过配置本命令,可以让设备和对端网关建立流量互引关系。建立互引关系后,如果设备收到了无法查找到用户的Web Cache下行流量,设备就会将下行流量从指定的接口转发给对端设备处理,使对端设备能够正确代理用户所需的Web资源。
在本场景中,上行流量为用户主机发送往Web服务器的HTTP/HTTPS请求报文流量,下行流量为Web服务器返回给用户主机的HTTP/HTTPS响应报文流量。
配置与指定对端设备建立流量互引关系前,需要关闭Web Cache功能,完成修改后再次开启。
在配置本命令时,请确保指定对端设备的IPv4地址可达,并且在路由转发表中该地址的出接口为本命令配置的通道接口。
可通过多次执行本命令,在多个VPN实例下分别建立流量互引关系。指定公网或同一VPN实例多次执行本命令时,最后一次执行的命令生效。
【举例】
# 在VPN实例test中,配置与对端设备建立流量互引关系,指定通道接口为GigabitEthernet0/0/1,对端设备的IPv4地址为1.1.1.1。
<Sysname> system
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] dual-gateway-channel vpn-instance test interface gigabitethernet 0/0/1 peer 1.1.1.1
escape aging-time命令用来配置Web Cache逃生表项的老化时间。
undo escape aging-time命令用来恢复缺省情况。
【命令】
escape aging-time aging-time
undo escape aging-time
【缺省情况】
Web Cache逃生表项的老化时间为1440分钟。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
aging-time:Web Cache逃生表项的老化时间,取值范围为1~1440,单位为分钟。
【使用指导】
用户客户端的HTTP/HTTPS请求如果匹配了逃生表项,则Web Cache设备会直接透传该请求和对应响应的HTTP/HTTPS报文,不对HTTP/HTTPS报文进行重封装,以提高请求成功的机会。
逃生表项存在老化时间,如果逃生表项老化,则Web Cache将继续尝试代理该逃生表项对应的HTTP/HTTPS请求,如果代理失败,则生成新的逃生表项。
如果Web Cache设备代理失败的情况较少发生,建议配置较小的逃生表项老化时间,反之则建议配置较大的逃生表项老化时间。
【举例】
# 配置Web Cache逃生表项的老化时间为10分钟。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] escape aging-time 10
escape enable命令用来开启逃生功能。
undo escape enable命令用来关闭逃生功能。
【命令】
escape enable
undo escape enable
【缺省情况】
逃生功能处于开启状态。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【使用指导】
缺省情况下,Web Cache设备收到来自用户客户端的首次HTTP/HTTPS请求后,会重新封装一个本地始发的HTTP/HTTPS请求发送给目标Web服务器。这一机制实际上将Web Cache设备当做了用户客户端的HTTP代理。如果存在Web Cache设备无法处理的报文,或者出现Web Cache设备与客户端或者Web服务器连接超时等情况,可能出现用户客户端直接请求可以成功,但是经过Web Cache设备代理后反而请求失败的情况。此时需要跳过Web Cache设备的代理,让用户客户端的HTTP/HTTPS请求原样到达目标Web服务器。
逃生功能处于开启状态时,Web Cache设备对于用户客户端对某个Web资源的首次HTTP/HTTPS请求会进行代理。如果能够顺利从目标Web服务器获得HTTP/HTTPS响应,则按照Web Cache正常流程缓存Web资源并代替Web服务器向客户端发送响应。如果Web Cache设备代理客户端向目标Web服务器请求失败,则将用户的请求记录到逃生表项中,后续用户的相同请求如果匹配了逃生表项,则Web Cache设备会直接透传该请求和对应响应的HTTP/HTTPS报文,不对HTTP/HTTPS报文进行重封装,以提高请求成功的机会。
逃生功能处于关闭状态时,任何来自用户客户端的HTTP/HTTPS请求都要经过Web Cache设备的代理。如果Web Cache设备向目标Web服务器请求失败,则用户客户端也请求失败。
逃生表项存在老化时间,如果逃生表项老化,则Web Cache将继续尝试代理该逃生表项对应的HTTP/HTTPS请求,如果代理失败,则生成新的逃生表项。
如果Web Cache设备代理失败的情况较少发生,可以关闭逃生功能以提高系统的隐私性和安全性。
如果Web Cache设备代理失败的情况经常发生,建议开启逃生功能以保障业务的基本运转。
【举例】
# 关闭逃生功能。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] undo escape enable
file-directory命令用来配置Web Cache的工作路径。
undo file-directory命令用来恢复缺省情况。
【命令】
file-directory directory
undo file-directory
【缺省情况】
未配置Web Cache的工作路径。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
directory:Web Cache的工作路径。directory参数必须携带slot信息用以指定存储介质所处的位置。存储介质位置的表示方式为:slotn#。其中n为设备上拥有存储介质的板卡所在槽位号,取值同进入当前web-cache视图时指定的slot编号。
【使用指导】
Web Cache的工作路径用于存放缓存文件和Web Cache的工作数据。缓存文件通常会占用较大存储空间(GB级别),建议工作路径配置在存储空间较大的存储介质上。
本命令指定的工作路径必须是创建web-cache视图时指定的slot上的路径,且不能为二级目录。否则,配置失败。
配置Web Cache的工作路径前,请保证该目录下没有与工作路径最后一级名称相同且不带文件扩展名的文件存在,否则,Web Cache异常退出。例如,配置Web Cache工作路径为flash:/web-cache,则flash下不允许存在名称为web-cache的不带文件扩展名的文件。
修改Web Cache的工作路径前,需要关闭Web Cache功能,完成修改后再次开启。
【举例】
# 配置Web Cache的工作路径为本地Flash中aaa文件夹。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] file-directory slot1#flash:/aaa
# 在缓存策略模板document的视图下,配置Web Cache的工作路径为本地Flash中aaa文件夹。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-profile document
[Sysname-web-cache-slot1-profile-document] file-directory flash:/aaa
file-directory backup命令用来配置Web Cache备用工作路径。
undo file-directory backup命令用来恢复缺省情况。
【命令】
file-directory backup directory
undo file-directory backup
【缺省情况】
未配置Web Cache备用工作路径。
【视图】
web-cache视图
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
directory:Web Cache备用工作路径。directory参数必须携带slot信息用以指定存储介质所处的位置。存储介质位置的表示方式为:slotn#。其中n为备用slot的编号。
【使用指导】
Web Cache的工作路径用于存放缓存文件和Web Cache的工作数据。缓存文件通常会占用较大存储空间(GB级别),建议工作路径配置在存储空间较大的存储介质上。
为了实现Web Cache的主备功能,Web Cache工作路径也分为主用工作路径和备用工作路径:
· 主用工作路径为主用slot服务,当启用主用slot时,用于存放缓存文件和Web Cache的工作数据。
· 备用工作路径为备用slot服务,当启用备用slot时,用于存放缓存文件和Web Cache的工作数据。
配置的备用工作路径是否需要位于备用slot上与设备型号有关,请以设备的实际情况为准。创建Web Cache备用工作路径后,主用工作路径上的Web Cache缓存文件不会同步备份到备用工作路径上。
配置Web Cache的工作路径前:
· 请保证该目录下没有与工作路径最后一级名称相同且不带文件扩展名的文件存在,否则,Web Cache异常退出。例如,配置Web Cache工作路径为slot2#flash:/web-cache,则flash下不允许存在名称为web-cache的不带文件扩展名的文件。
· 需要关闭Web Cache功能,完成修改后再次开启。
【举例】
# 配置Web Cache的备用工作路径。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] file-directory backup slot4#flash:/webcache
# 在缓存策略模板document的视图下,配置Web Cache的备用工作路径。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] cache-profile document
[Sysname-web-cache-slot1-profile-document] file-directory backup slot4#flash:/webcache
【相关命令】
· backup
http enable命令用来开启基于HTTP的Web Cache功能。
undo http enable命令用来关闭基于HTTP的Web Cache功能。
【命令】
http enable
undo http enable
【缺省情况】
基于HTTP的Web Cache功能处于关闭状态。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【使用指导】
开启Web Cache功能前必须配置Web Cache的工作路径和允许缓存Web页面上的文件类型。
【举例】
# 开启基于HTTP的Web Cache功能。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] http enable
【相关命令】
· cached-data
· file-directory
https certificate-mode命令用来配置Web Cache的HTTPS证书认证方式。
undo https certificate-mode命令用来恢复缺省情况。
【命令】
https certificate-mode { built-in | third-party }
undo https certificate-mode
【缺省情况】
Web Cache的HTTPS证书认证方式为内置证书认证方式。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
built-in:内置证书认证方式。
third-party:第三方证书认证方式。
【使用指导】
本命令用于方便网络管理员灵活选择Web Cache在提供HTTPS服务时证书的认证方式。用户客户端在进行HTTPS访问时,证书的运作机制为:
(1) Web服务器将自身的证书发布给Web Cache设备,Web Cache设备认证该证书并与Web服务器建立HTTPS连接。
(2) Web Cache设备将自身的证书发布给用户客户端,用户客户端认证该证书并与Web Cache设备建立HTTPS连接。
目前可以通过两种方式影响用户客户端对Web Cache设备的证书的认证,两种方式的介绍和优劣势对比如下:
· 内置证书认证方式:在此方式下,Web Cache设备使用私有的证书与用户客户端建立HTTPS连接,由于Web Cache设备的私有证书未经过权威CA机构认证,用户客户端必须要在本地安装Web Cache设备发布的私有根证书,才能对来自Web Cache设备的私有证书成功认证。此方式的优势是安装了私有根证书后,理论上用户客户端可以通过HTTPS连接访问任何Web服务器(只要Web Cache设备能够与该Web服务器建立HTTPS连接),而劣势是用户客户端需要自行安装根证书,操作较繁琐,不便于使用。
· 第三方证书认证方式:在此方式下,Web Cache设备使用用户客户端想要访问的Web服务器的证书来与用户客户端建立HTTPS连接。本方式相当于对Web服务器的证书进行代理,在建立HTTPS连接时向用户客户端发布Web服务器的证书而不是自身的私有证书,这样在进行HTTPS连接时全程无需使用私有证书。此方式的优势是简化了用户客户端的操作,劣势是用户客户端只能与Web Cache设备代理了证书的Web服务器建立HTTPS连接。
配置Web Cache的HTTPS证书认证方式为第三方证书认证方式后,需要通过https ssl certificate directory命令和https ssl certificate domain-name命令指定Web Cache设备需要代理的第三方证书,才能开启基于HTTPS的Web Cache功能。
同时配置了https certificate-mode third-party和https ssl certificate directory命令时,如果需要修改https certificate-mode命令的配置,必须先执行undo https ssl certificate directory命令。
只有在Web Cache功能处于关闭状态时,才可以修改Web Cache的HTTPS证书认证方式。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 配置Web Cache的HTTPS证书认证方式为第三方证书认证方式。
<Sysname> system-view
[Sysname] webcache slot 1
[Sysname-web-cache-slot1] https certificate-mode third-party
https enable命令用来开启基于HTTPS的Web Cache功能。
undo https enable命令用来关闭基于HTTPS的Web Cache功能。
【命令】
https enable
undo https enable
【缺省情况】
基于HTTPS的Web Cache功能处于关闭状态。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【使用指导】
开启基于HTTPS的Web Cache功能前必须配置Web Cache的工作路径和允许缓存Web页面上的文件类型。
当用户使用HTTPS访问Web服务器,且通过开启了基于HTTPS的Web Cache功能的设备进行Web资源缓存时,会出现证书告警提示——因为WebCache设备和用户主机建立SSL连接使用的是本设备的数字证书,此证书为私有CA签发,无法通过用户主机HTTPS客户端的验证。此时,可以将Web Cache设备上Web Cache工作路径下名称为webcache_cacert.crt的CA根证书文件导出,并添加到用户主机的“受信任的证书颁发机构”中,用户主机会将Web Cache设备作为其数字证书的CA,以便通过数字证书的校验,避免出现证书告警提示。
【举例】
# 开启基于HTTPS的Web Cache功能。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] https enable
【相关命令】
· cached-data
· file-directory
https listen-port命令用来配置Web Cache的HTTPS侦听端口。
undo https listen-port命令用来取消Web Cache的HTTPS侦听端口的配置。
【命令】
https listen-port port-number [ server-port server-port-number ]
undo https listen-port [ port-number ]
【缺省情况】
Web Cache侦听HTTPS报文的端口号为2043。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
port-number:Web Cache侦听HTTPS报文的端口号,取值范围为1025~65535。
server-port server-port-number:表示指定Web服务器侦听HTTP报文的端口号,server-port-number的取值范围为1~65535,缺省值为443。
【使用指导】
出现以下任一场景时,可以配置本命令:
· Web Cache的缺省侦听端口被本设备的其它业务占用,导致Web Cache功能无法开启。
· 缓存资源所属的Web服务器侦听端口不是443。
当设备缓存多个Web服务器上的数据时,且这些Web服务器侦听的端口不同,则需要多次执行本命令,逐个配置Web服务器侦听端口,使其与Web Cache侦听端口一一对应,最多可配置对应关系的数量与设备型号有关,详细说明如下表所示。
|
型号 |
数量 |
|
MSR1008 |
8 |
|
MSR1004-G |
8 |
|
MSR1004-G-5GCN |
8 |
|
MSR1104-G、MSR1104-G-DSL-CAT6 |
8 |
|
MSR2630E-X1 |
16 |
|
MSR3610E-X1、MSR3610E-X1-DP |
16 |
|
MSR3610-G-X3-DP、MSR3610-G-X3、MSR3610-G-X3-DP-DC、 MSR3610-G-X3-DC |
16 |
|
MSR3620-G-X3 |
32 |
|
型号 |
说明 |
|
MSR2660-XS |
8 |
|
MSR2680-XS |
16 |
|
型号 |
说明 |
|
MSR2600-12X-WiNet |
8 |
|
MSR2610-13X-WiNet |
16 |
多次配置本命令,将一个Web Cache侦听端口绑定多个Web服务器侦听端口、或者多个Web Cache侦听端口绑定同一个Web服务器侦听端口时,均会将配置覆盖,仅最新配置生效。
配置本命令后,Web Cache会检测从主机收到HTTPS请求中使用的目的端口是否为配置的Web服务器的HTTPS侦听端口。若端口号匹配,则将请求中的目的端口号替换为对应的Web Cache侦听端口号,并送至Web Cache触发缓存服务。设备向主机返回HTTPS应答时,则将TCP封装中源端口号替换回Web服务器的HTTPS侦听端口号发送。
配置本命令前:
· 需要关闭Web Cache功能,完成修改后再次开启。
· 请使用display tcp verbose命令来查看当前设备正在使用的TCP端口号,如果指定的端口正在被其他业务使用会导致本命令配置失败。
【举例】
# 配置Web Cache侦听HTTPS报文的端口号为1655。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] https listen-port 1655
# 配置Web Cache侦听HTTPS报文的端口号为1655,Web服务器侦听HTTPS报文的端口号为8655。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] https listen-port 1655 server-port 8655
【相关命令】
https ssl certificate directory命令用来指定HTTPS证书相关文件所在目录。
undo https ssl certificate directory命令用来取消配置HTTPS证书相关文件所在目录。
【命令】
https ssl certificate directory directory-name
undo https ssl certificate directory
【缺省情况】
未配置HTTPS证书相关文件所在目录。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
directory-name:证书文件所在目录,必须指定主设备/主用主控板上的存储介质。directory-name参数必须携带slot信息用以指定存储介质所处的位置。存储介质位置的表示方式为:slotn#。其中n为设备上拥有存储介质的板卡所在槽位号。directory-name参数必须指定主设备/主用主控板上的存储介质。
【使用指导】
本命令仅用于在Web Cache的HTTPS证书认证方式为第三方证书认证方式时,配置Web Cache设备代理的证书文件及证书密钥文件所在目录。
配置了https ssl certificate directory以及https ssl certificate domain-name命令后,Web Cache设备即可以将https ssl certificate domain-name命令指定的第三方证书发布给用户客户端进行认证。
只有在Web Cache功能处于关闭状态时,才可以修改证书相关文件所在目录。
同时配置了https ssl certificate domain-name和https ssl certificate directory命令时,如果需要修改https ssl certificate directory命令的配置,必须先执行undo https ssl certificate domain-name命令。
多次执行本命令,最后一次执行的命令生效。
【举例】
# 配置Web Cache的HTTPS证书相关文件所在目录为本地flash中的ssl-certificate文件夹。
<Sysname> system-view
[Sysname] webcache slot 1
[Sysname-web-cache-slot1] https certificate-mode third-party
[Sysname-web-cache-slot1] https ssl certificate directory flash:/ssl-certificate
https ssl certificate domain-name命令用来配置Web Cache代理发布的HTTPS域名的证书文件及其对应的密钥文件。
undo https ssl certificate domain-name命令用来删除Web Cache代理发布的指定HTTPS域名的证书文件以及对应的密钥文件。
【命令】
https ssl certificate domain-name domain-name file certificate-file key-file certificate-keyfile
undo https ssl certificate domain-name domain-name
【缺省情况】
未配置相关证书文件和密钥文件。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
domain-name:HTTPS类型Web请求的域名。domain-name的域名后缀有“.”分隔的字符串组成,每个字符串长度不能超过63个字符,最少输入3个这样的字符串,最多输入5个这样的字符串,包括“.”在内的总长度不超过253个字符。不区分大小写,字符串中可以包含字母、数字、“-”、“_”或“*”。“*”字符用来匹配固定开头或结尾的一系列域名。例如,“www.example.*”表示所有开头为“www.example.”的域名均被匹配;“*.example.gov”表示所有结尾为“.example.gov”的域名均被匹配。
file certificate-file:证书文件的名称。
key-file certificate-keyfile:证书密钥文件的名称。
【使用指导】
本命令仅用于在Web Cache的HTTPS证书认证方式为第三方证书认证方式时,配置Web Cache设备代理的证书文件及证书密钥文件。
配置了https ssl certificate directory以及https ssl certificate domain-name命令后,Web Cache设备即可以将https ssl certificate domain-name命令指定的第三方证书发布给用户客户端进行认证。
配置本命令前,必须配置https ssl certificate directory命令确定证书文件以及密钥文件所在目录。
必须确保本命令指定的证书文件和密钥文件已经存在,否则本命令执行失败。
只有在Web Cache功能处于关闭状态时,才可以修改本命令的配置。
可以通过多次执行本命令,配置多个Web Cache代理发布的HTTPS域名的证书文件及其对应的密钥文件,最多对128个域名的证书文件及密钥文件进行代理发布。针对同一域名多次执行本命令时,最后一次执行的命令生效。
在执行本命令之前建议用户手动将证书文件和密钥文件拷贝到所有备用设备/备用主控板的相同路径下,以便在发生主备倒换时顺利恢复Web Cache的配置。
【举例】
# 配置Web Cache代理发布test.example.cn的证书文件cert.pem及其对应的密钥文件cert.key。
<Sysname> system-view
[Sysname] webcache slot 1
[Sysname-web-cache-slot1] https certificate-mode third-party
[Sysname-web-cache-slot1] https ssl certificate directory flash:/ssl-certificate
[Sysname-web-cache-slot1] https ssl certificate domain-name test.example.cn file cert.pem key-file cert.key
listen-port命令用来配置Web Cache的HTTP侦听端口。
undo listen-port命令用来取消Web Cache的HTTP侦听端口的配置。
【命令】
listen-port port-number [ server-port server-port-number ]
undo listen-port [ port-number ]
【缺省情况】
Web Cache侦听HTTP报文的端口号为4180。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
port-number:Web Cache侦听HTTP报文的端口号,取值范围为1025~65535。
server-port server-port-number:Web服务器侦听HTTP报文的端口号,取值范围为1~65535,缺省值为80。
【使用指导】
出现以下任一场景时,可以配置本命令:
· Web Cache的缺省侦听端口被本设备的其它业务占用,导致Web Cache功能无法开启。
· 缓存资源所属的Web服务器侦听端口不是80。
当设备缓存多个Web服务器上的数据时,且这些Web服务器侦听的端口不同,则需要多次执行本命令,逐个配置Web服务器侦听端口,使其与Web Cache侦听端口一一对应,最多可配置对应关系的数量与设备型号有关,详细说明如下表所示。
|
型号 |
数量 |
|
MSR1008 |
8 |
|
MSR1004-G |
8 |
|
MSR1004-G-5GCN |
8 |
|
MSR1104-G、MSR1104-G-DSL-CAT6 |
8 |
|
MSR2630E-X1 |
16 |
|
MSR3610E-X1、MSR3610E-X1-DP |
16 |
|
MSR3610-G-X3-DP、MSR3610-G-X3、MSR3610-G-X3-DP-DC、 MSR3610-G-X3-DC |
16 |
|
MSR3620-G-X3 |
32 |
|
型号 |
说明 |
|
MSR2660-XS |
8 |
|
MSR2680-XS |
16 |
|
型号 |
说明 |
|
MSR2600-12X-WiNet |
8 |
|
MSR2610-13X-WiNet |
16 |
多次配置本命令,将一个Web Cache侦听端口绑定多个Web服务器侦听端口、或者多个Web Cache侦听端口绑定同一个Web服务器侦听端口时,均会将配置覆盖,仅最新配置生效。
配置本命令后,Web Cache会检测从主机收到HTTP请求中使用的目的端口是否为配置的Web服务器的HTTP侦听端口。若端口号匹配,则将请求中的目的端口号替换为对应的Web Cache侦听端口号,并送至Web Cache触发缓存服务。设备向主机返回HTTP应答时,则将TCP封装中源端口号替换回Web服务器的HTTP侦听端口号发送。
配置本命令前:
· 需要关闭Web Cache功能,完成修改后再次开启。
· 请使用display tcp verbose命令来查看当前设备正在使用的TCP端口号,如果指定的端口正在被其他业务使用会导致本命令配置失败。
【举例】
# 配置Web Cache侦听HTTP报文的端口号为1655。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] listen-port 1655
# 配置Web Cache侦听HTTP报文的端口号为1655,Web服务器侦听HTTP报文的端口号为8655。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] listen-port 1655 server-port 8655
【相关命令】
object-group命令用来对Web Cache缓存的Web数据进行过滤。
undo object-group命令用来取消Web Cache对缓存Web数据的过滤。
【命令】
object-group [ exclude ] [ source ] { ip | ipv6 } object-group-name
undo object-group [ exclude ] [ source ] { ip | ipv6 }
【缺省情况】
Web Cache未对缓存的Web数据进行过滤。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
exclude:表示不允许缓存通过过滤条件的Web数据,其他Web数据均允许缓存。如果未指定本参数,则表示仅允许缓存通过过滤条件的Web数据。
source:表示对指定用户客户端申请的Web数据进行过滤。如果未指定本参数,则对指定Web服务器上响应的Web数据进行过滤。
ip:表示使用IPv4地址对象组来匹配用户客户端或Web服务器。
ipv6:表示使用IPv6地址对象组来匹配用户客户端或Web服务器。
object-group-name:对象组的名称,为1~63个字符的字符串,不区分大小写。
【使用指导】
本命令指定不同参数时,生效情况分别如下:
· 指定exclude参数时:
¡ 如果指定了source参数,Web Cache将不缓存IP地址匹配object-group-name的用户客户端申请的Web数据。
¡ 如果未指定source参数,Web Cache将不缓存IP地址匹配object-group-name的Web服务器响应的Web数据。
· 未指定exclude参数时:
¡ 如果指定了source参数,Web Cache将仅缓存IP地址匹配object-group-name的用户客户端申请的Web数据。
¡ 如果未指定source参数,Web Cache将仅缓存IP地址匹配object-group-name的Web服务器响应的Web数据。
指定同一类Web数据多次执行本命令,但指定的地址对象组不同时,以最后一次执行的命令为准。但是Web Cache功能开启后不允许再修改本命令的配置,如需修改,请先关闭Web Cache功能,并完成修改后再次开启。
请不要指定同一个地址对象组过滤的用户客户端或Web服务器同时配置object-group和object-group exclude命令。
【举例】
# 引用名称为aaa的IPv4地址对象组来对Web Cache可缓存的Web数据进行过滤。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] object-group ip aaa
# 配置引用名称为aaa的IPv4地址对象组,所有IP地址匹配该地址对象组的用户客户端申请的Web数据将都不会被设备缓存。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] object-group exclude source ip aaa
【相关命令】
· object-group(安全命令参考/对象组)
pass-header命令用来配置响应头透传相关设置。
undo pass-header命令用来取消恢复缺省情况。
【命令】
pass-header { date | server } *
undo pass-header [ date | server ]
【缺省情况】
缺省情况下,Web Cache设备会拦截并替换上游响应中的Date头和Server头,并改写为自身的时间和标识。
【视图】
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
date:保留上游响应中的Date头。
server:保留上游响应中的Server头。
【使用指导】
缺省情况下,Web Cache设备会拦截并替换上游响应中的Date头和Server头,并改写为自身的时间和标识。
如果客户端需要知道内容在Web服务器上生成的准确时间,而不是Web Cache缓存的时间,可以在Web Cache设备上配置本命令并指定date参数使得Web Cache设备保留上游响应中的Date头。
如果客户端需要知道后端具体服务器类型,可以在Web Cache设备上配置本命令并指定server参数使得Web Cache设备保留上游响应中的Server头。
【举例】
# 在缓存策略模板document的视图下,配置保留上游响应中的Server头。
<sysname> system-view
[sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-profile document
[sysname-web-cache-slot1-profile-document] pass-header server
priority命令用来配置缓存策略模板的优先级值。
undo priority命令用来恢复缺省情况。
【命令】
priority priority
undo priority
【缺省情况】
未配置缓存策略模板的优先级值。
【视图】
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
priority:优先级值,取值范围为1~65535,取值越小越优。
【使用指导】
存在多个缓存策略模板时,多个缓存策略模板之间也存在匹配的优先顺序,具体规则为:
(1) 按URI的匹配规则进行排序:精确文本匹配>前缀正则表达式匹配>正则表达式匹配>前缀文本匹配。在正则表达式匹配规则中,无论是否区分大小写,优先顺序都相同。
(2) 若匹配规则相同,则比较缓存策略模板的优先级值。优先级值越小缓存策略模板越优。
(3) 若匹配规则和优先级值都相同,则按照字母序优选缓存策略模板。
【举例】
<Sysname> system-view
[Sysname] web-cache slot 1
[sysname-web-cache-slot1] cache-profile document
[sysname-web-cache-slot1-profile-document] priority 10
querystring-file-cache enable命令用来开启Web Cache对QueryString请求的文件的缓存功能。
undo querystring-file-cache enable命令用来关闭Web Cache对QueryString请求的文件的缓存功能。
【命令】
querystring-file-cache enable
undo querystring-file-cache enable
【缺省情况】
Web Cache对QueryString请求的文件的缓存功能处于关闭状态。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【使用指导】
缺省情况下,URL中QueryString请求的文件不会被Web Cache缓存。配置本命令后,Web Cache可以缓存QueryString请求的文件。Web Cache会结合其他的文件过滤规则最终决定是否缓存QueryString请求的文件。
【举例】
# 在slot 1上,开启Web Cache对QueryString请求的文件的缓存功能。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1] querystring-file-cache enable
【相关命令】
· cached-data
· cached-extension-name
· cached-file
refresh web-cache cached-data命令用来刷新缓存数据。
【命令】
refresh web-cache cached-data { all | contents contents | domain-name domain-name | regular-expression regular-expression | url url-string }
【视图】
用户视图
【缺省用户角色】
network-admin
【参数】
all:刷新全部本地缓存数据。
contents contents:刷新来自指定资源路径的缓存数据。contents表示资源路径,为1~255个字符的字符串,不区分大小写。
domain-name domain-name:刷新来自指定域名的缓存数据。domain-name表示域名,为1~255个字符的字符串,不区分大小写。
regular-expression regular-expression:刷新来源URL满足指定正则表达式的缓存数据。regular-expression表示正则表达式,为1~255个字符的字符串,区分大小写。
url url-string:刷新来自指定URL的缓存数据,url-string表示URL,为1~255个字符的字符串。
【使用指导】
当Web Cache设备上的本地缓存尚未过期,而Web服务器上的资源已经被更新时,客户端会从Web Cache设备获取到过时的资源。为了解决这一问题,网络管理员可以手动执行本命令,将Web Cache设备上的指定本地缓存标记为过期状态。这样,用户后续请求该资源时,Web Cache会主动向Web服务器验证资源是否有更新。若资源未更新,Web Cache继续使用本地缓存响应用户请求,从而节省回源带宽;若资源已更新,Web Cache则从源站获取最新内容进行响应,并同步更新本地缓存数据。
【举例】
# 刷新全部缓存数据。
<Sysname> refresh web-cache cached-data all
# 刷新指定目录的缓存数据。
<Sysname> refresh web-cache cached-data contents www.example.com/dir1
# 刷新指定域名的缓存数据。
<Sysname> refresh web-cache cached-data domain www.example.com
# 刷新URL满足指定正则表达式的缓存数据。
<Sysname> refresh web-cache cached-data regular-expression \\.(exe|zip)$
# 刷新来自指定URL的缓存数据。
<Sysname> refresh web-cache cached-data url www.example.com/dir1/test.txt
transparent-proxy keepalive enable命令用来配置Web Cache设备的上下游连接模式以及代理模式。
undo transparent-proxy keepalive enable命令用来配置Web Cache设备的上下游连接模式为短连接,代理模式为半透明。
【命令】
transparent-proxy keepalive [ keep-source-port ] enable
undo transparent-proxy keepalive enable
【缺省情况】
Web Cache设备的上下游连接方式为长连接,代理模式为半透明。
【视图】
web-cache视图
【缺省用户角色】
network-admin
【参数】
keep-source-port:Web Cache设备的上下游连接方式为长连接,代理模式为全透明。如果未指定本参数,则Web Cache设备的上下游连接方式为长连接,代理模式为半透明。
【使用指导】
Web Cache设备的上游连接为与Web服务器的TCP连接,下游连接为与用户客户端的TCP连接。Web Cache设备代替用户向Web服务器请求资源,相当于客户端的HTTP代理。Web Cache设备可以通过本命令修改连接模式和代理模式,各模式之间的区别如下:
· 长连接:Web Cache设备在完成一次请求-响应后不会立即断开上下游连接,而是保持一段时间,在这段时间内多个HTTP/HTTPS请求和响应都可以复用该链接。长连接可以减少频繁建立TCP连接带来的开销,提高通信效率,因此适合高并发、频繁通信的场景。
· 短连接:每完成一次请求-响应,Web Cache设备的上下游连接就会断开。因此每次请求都要重新建立新的连接。短连接模式的TCP连接开销较高,通信效率较低,但是也意味着每次请求都需要重新认证,可以避免TCP连接复用带来的潜在风险,因此适用于请求量低且安全性要求较高的场景。
· 半透明代理:Web Cache设备在客户端和Web服务器之间代理转发请求和响应。客户端无需显式配置代理,但Web Cache设备会对请求报文进行一定程度的修改(例如修改源端口号)。同时,Web Cache设备的IP地址对Web服务器不可见,服务器感知到的是客户端的真实IP。此模式适用于需要对流量内容进行处理,但又希望Web服务器能感知到用户真实IP的场景。
· 纯透明代理:Web Cache设备在客户端和Web服务器之间代理转发请求和响应。客户端无需显式配置代理,Web服务器也察觉不到Web Cache设备的存在。同时,Web Cache仅做转发,不更改请求或响应内容,即服务器感知到的是客户端的真实IP地址和端口号。此模式适用于Web Cache无需对流量内容进行任何处理,且希望客户端和服务器都无感知代理存在的场景。
透明代理功能生效的前提是关闭快速转发负载分担功能,否则会造成Web Cache功能异常。快速转发负载分担功能的详细介绍,请参见“三层技术-IP业务配置指导”中的“快速转发”。
【举例】
# 配置Web Cache设备的上下游连接方式为长连接,代理模式为纯透明。
<Sysname> system-view
[Sysname] web-cache slot 1
[sysname-web-cache-slot1] transparent-proxy keepalive keep-source-port enable
uri命令用来配置URI的匹配规则。
undo uri命令用来恢复缺省情况。
【命令】
uri { prefix { regular | text } | { regular | regular-case-insensitive | text } } uri-string
undo uri
【缺省情况】
未配置URI的匹配规则。
【视图】
缓存策略模板视图
【缺省用户角色】
network-admin
【参数】
prefix:表示前缀匹配。如果未指定本参数,则表示精确匹配。
regular:使用正则表达式匹配URI。
regular-case-insensitive:使用正则表达式匹配URI,且不区分字母大小写。
text:表示使用普通文本匹配URI。
uri-string:URI字符串,长度范围为1~255个字符。
【使用指导】
本命令用来配置URI的匹配规则,决定缓存策略模板的配置对哪些缓存资源生效,并使得Web Cache允许缓存规则匹配到的URI的资源。
目前支持如下匹配规则:
· 精确文本匹配(不指定prefix参数、指定text参数):仅当URI与指定字符串完全一致时,才匹配成功。
· 正则表达式匹配(不指定prefix参数、指定regular或者regular-case-insensitive参数):仅当URI整体符合指定的正则表达式时,才匹配成功。
· 前缀文本匹配(指定prefix和text参数):仅当URI以指定字符串开头时,才匹配成功。
· 前缀正则表达式匹配(指定prefix和regular参数):仅当URI以符合指定正则表达式的方式开头时,才匹配成功。
指定prefix参数时,指定字符串应当以“/”开头,例如:
· uri prefix regular /(dir1|dir2),表示匹配前缀为“/dir1”或者“/dir2”的URI。
· uri prefix text /dir1,表示仅匹配前缀为“/dir1”的URI。
在正则表达式匹配模式下,输入的字符串必须满足正则表达式的语法。例如:
uri regular-case-insensitive \\.(docx|pptx|xlsx)$表示匹配以.docx、.pptx或.xlsx 结尾的URI。请确保所填写的正则表达式语法正确,否则可能会影响WebCache缓存功能的正常工作。
如果URI包含空格,需要使用双引号包含参数,例如uri regular "document files"。
如果URI内容包含右斜杠(\)或双引号("),输入命令行时需要使用转义符(\)。例如命令行输入(\\),最终结果为(\),命令行输入(\"),最终结果为(")。
建议配置URI时尽量不要包含上述特殊符号。
【举例】
# 配置URI的匹配规则为正则表达式匹配,正则表达式为\\.(docx|pptx|xlsx)$,且匹配时不区分大小写。
<Sysname> system-view
[Sysname] web-cache
[sysname-web-cache] cache-profile document
[sysname-web-cache-profile-document] uri regular-case-insensitive \\.(docx|pptx|xlsx)$
web-cache命令用来创建并进入web-cache视图。如果web-cache视图已经存在,则直接进入web-cache视图。
undo web-cache命令用来删除web-cache视图及web-cache视图下的所有配置。
【命令】
web-cache slot slot-number
undo web-cache slot
【缺省情况】
不存在web-cache视图。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
slot slot-number:表示在指定单板上创建并进入web-cache视图,slot-number表示单板所在的槽位号。对于本产品,slot-number只能为固定取值,表示整台设备。
【举例】
# 创建并进入web-cache视图。
<Sysname> system-view
[Sysname] web-cache slot 1
[Sysname-web-cache-slot1]
web-cache prebuilt config-file命令用来生成Web Cahce的预配置文件。
【命令】
web-cache prebuilt config-file
【视图】
用户视图
【缺省用户角色】
network-admin
【使用指导】
执行本命令后,设备根据当前所有Web Cache配置生成一个配置文件——webcache-prebuilt.conf。该配置文件存放在设备的Web Cache工作路径中。用户可以将该配置文件取出并加载到远程控制器中,以实现运行环境和配置的快速下发。
【举例】
# 生成预配置文件
<sysname> web-cache prebuilt config-file
web-cache precache命令用来开始执行或停止预缓存。
【命令】
web-cache precache { start [ login ] [ time time date ] | stop }
本命令的支持情况与设备型号有关,详细说明如下表所示。
|
型号 |
说明 |
|
MSR1008 |
不支持 |
|
MSR1004-G |
不支持 |
|
MSR1004-G-5GCN |
不支持 |
|
MSR1104-G、MSR1104-G-DSL-CAT6 |
不支持 |
|
MSR2630E-X1 |
不支持 |
|
MSR3610E-X1、MSR3610E-X1-DP |
不支持 |
|
MSR3610-G-X3-DP、MSR3610-G-X3、MSR3610-G-X3-DP-DC、 MSR3610-G-X3-DC |
不支持 |
|
MSR3620-G-X3 |
支持 |
|
型号 |
说明 |
|
MSR2660-XS |
不支持 |
|
MSR2680-XS |
不支持 |
|
型号 |
说明 |
|
MSR2600-12X-WiNet |
不支持 |
|
MSR2610-13X-WiNet |
不支持 |
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
start:开启预缓存。
stop:停止预缓存。
login:执行对URL资源的预缓存前,先进行登录认证。如果未指定本参数,则设备直接访问预缓存URL,不进行登录认证。
time time date:指定预缓存的执行时间,即预约执行预缓存。其中time的格式为HH:MM(时:分),date的格式为MM/DD/YYYY(月/日/年)或YYYY/MM/DD(年/月/日)。如果未指定本参数,则立即执行预缓存。
【使用指导】
在缺省情况下,当用户首次访问尚未被Web Cache缓存的URL资源时,Web Cache设备需要实时向目标Web服务器发起请求获取该资源,因此用户的首次访问仍会受到一定的延迟影响。
为进一步提升用户体验,可以在用户首次请求之前配置Web Cache设备的预缓存功能,主动将指定的URL资源提前下载并缓存在本地。这样,当用户首次访问这些预缓存的资源时,Web Cache设备能够直接从本地缓存中响应请求,大幅缩短响应时间,提高访问速度,显著优化首次访问体验。
设备获取预缓存资源URL的方式为:
(1) 在某个路径下的TXT文件中记录了Web资源的URL。
(2) 执行web-cache precache import url命令导入指定的TXT文件,并获得其中记录的URL。
本命令用来执行预缓存,每执行一次web-cache precache start命令,Web Cache设备就将所配置的预缓存URL全部触发一次下载,并将其中未被缓存过的资源缓存在本地。
在预缓存执行过程中,可以随时通过执行web-cache precache stop命令来停止预缓存。
预缓存功能成功执行依赖如下前置条件:
· Web Cache功能处于开启状态。
· 在Web Cache设备上部署专用于预缓存功能的Docker容器:
a. 网络管理员将预缓存功能专用的镜像导入到Web Cache设备中。镜像文件请联系技术支持获取。
b. 执行docker load -i命令加载预缓存镜像,并完成Docker容器的部署。
c. 通过tpa ip source或tpa ipv6 source命令为Docker容器配置源地址,用于与外界设备通信。
关于Docker容器部署与源地址配置的详细介绍,请参见“容器管理与源地址配置命令”。
在实际应用中,部分URL资源可能存在认证机制,需用户完成登录认证(即用户登录)后才能访问。如果Web Cache在预缓存时未进行认证而直接请求这些URL资源,可能导致预缓存失败。
执行web-cache precache命令时,如果指定了login参数,则Web Cache设备会首先访问web-cache precache login-url命令指定的登录认证URL,然后使用web-cache precache username命令配置的用户名和密码进行认证。认证成功后,设备会获取到Cookie等有效身份认证信息。随后,Web Cache会使用该认证信息访问并下载所有需预缓存的URL资源,确保这些资源能够在用户首次访问时直接被命中。
预缓存资源所在的Web服务器如果需要通过HTTPS方式访问,则需要此服务器支持TLS1.2及以上的版本,否则无法成功完成预缓存。
预缓存成功与否与URL的可达性有关,部分URL的资源可能由于路由不通无法访问。
在预缓存执行过程中,无法重复执行web-cache precache start命令,需要等待当前预缓存执行结束或执行web-cache precache stop命令强制停止预缓存。
【举例】
# 开始执行预缓存。
<Sysname> system-view
[Sysname] web-cache precache start
# 指定2025年9月5日22时0分执行预缓存,并在正式访问预缓存URL前先进行登录认证。
<Sysname> system-view
[Sysname] web-cache precache start login time 22:00 2025/09/05
web-cache precache import url命令用来从TXT文件中导入预缓存的URL。
【命令】
web-cache precache import url url-string [ vpn-instance vpn-instance-name ]
本命令的支持情况与设备型号有关,详细说明如下表所示。
|
型号 |
说明 |
|
MSR1008 |
不支持 |
|
MSR1004-G |
不支持 |
|
MSR1004-G-5GCN |
不支持 |
|
MSR1104-G、MSR1104-G-DSL-CAT6 |
不支持 |
|
MSR2630E-X1 |
不支持 |
|
MSR3610E-X1、MSR3610E-X1-DP |
不支持 |
|
MSR3610-G-X3-DP、MSR3610-G-X3、MSR3610-G-X3-DP-DC、 MSR3610-G-X3-DC |
不支持 |
|
MSR3620-G-X3 |
支持 |
|
型号 |
说明 |
|
MSR2660-XS |
不支持 |
|
MSR2680-XS |
不支持 |
|
型号 |
说明 |
|
MSR2600-12X-WiNet |
不支持 |
|
MSR2610-13X-WiNet |
不支持 |
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
url-string:要导入的TXT文件的URL,为1~255个字符的字符串,不区分大小写。
vpn-instance vpn-instance-name:如果Web Cache设备去往指定TXT文件URL的出接口绑定了VPN实例,则需要指定本参数,指定的VPN实例即为出接口绑定的VPN实例。vpn-instance-name为MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果Web Cache设备去往指定TXT文件URL的出接口是公网接口,则无需指定本参数。
【使用指导】
在缺省情况下,当用户首次访问尚未被Web Cache缓存的URL资源时,Web Cache设备需要实时向目标Web服务器发起请求获取该资源,因此用户的首次访问仍会受到一定的延迟影响。
为进一步提升用户体验,可以在用户首次请求之前配置Web Cache设备的预缓存功能,主动将指定的URL资源提前下载并缓存在本地。这样,当用户首次访问这些预缓存的资源时,Web Cache设备能够直接从本地缓存中响应请求,大幅缩短响应时间,提高访问速度,显著优化首次访问体验。
设备获取预缓存资源URL的方式为:
(1) 在某个路径下的TXT文件中记录了Web资源的URL。
(2) 执行web-cache precache import url命令导入指定的TXT文件,并获得其中记录的URL。
如需执行预缓存,则需要执行web-cache precache start命令,每执行一次此命令,Web Cache设备就将所指定的预缓存URL全部触发一次下载,并将其中未被缓存过的资源缓存在本地。
预缓存执行过程中,无法通过执行web-cache precache import url命令导入新的TXT文件。
【举例】
# 配置从ftp://1.1.1.1/newpath/precache.txt导入预缓存URL。
<Sysname> system-view
[Sysname] web-cache precache import url ftp://1.1.1.1/newpath/precache.txt
【相关命令】
· web-cache precache
web-cache precache login-url命令用来配置Web Cache进行登录认证的URL。
undo web-cache precache login-url命令用来恢复缺省状况。
【命令】
web-cache precache login-url url-string
undo web-cache precache login-url
本命令的支持情况与设备型号有关,详细说明如下表所示。
|
型号 |
说明 |
|
MSR1008 |
不支持 |
|
MSR1004-G |
不支持 |
|
MSR1004-G-5GCN |
不支持 |
|
MSR1104-G、MSR1104-G-DSL-CAT6 |
不支持 |
|
MSR2630E-X1 |
不支持 |
|
MSR3610E-X1、MSR3610E-X1-DP |
不支持 |
|
MSR3610-G-X3-DP、MSR3610-G-X3、MSR3610-G-X3-DP-DC、 MSR3610-G-X3-DC |
不支持 |
|
MSR3620-G-X3 |
支持 |
|
型号 |
说明 |
|
MSR2660-XS |
不支持 |
|
MSR2680-XS |
不支持 |
|
型号 |
说明 |
|
MSR2600-12X-WiNet |
不支持 |
|
MSR2610-13X-WiNet |
不支持 |
【缺省情况】
未配置Web Cache进行登录认证的URL。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
url-string:Web Cache进行登录认证的URL,为1~511个字符的字符串,不区分大小写。
【使用指导】
本命令用于配合Web Cache的预缓存功能。预缓存功能可以在用户首次请求之前,主动将指定的URL资源提前下载并缓存在本地,从而提升用户首次访问的体验。但在实际应用中,部分URL资源可能存在认证机制,需用户完成登录认证(即用户登录)后才能访问。如果Web Cache在预缓存时未进行认证而直接请求这些URL资源,可能导致预缓存失败。
执行web-cache precache命令时,如果指定了login参数,则Web Cache设备会首先访问web-cache precache login-url命令指定的登录认证URL,然后使用web-cache precache username命令配置的用户名和密码进行认证。认证成功后,设备会获取到Cookie等有效身份认证信息。随后,Web Cache会使用该认证信息访问并下载所有需预缓存的URL资源,确保这些资源能够在用户首次访问时直接被命中。
【举例】
# 配置Web Cache进行登录认证的URL为https://192.168.0.1/login。
<Sysname> system-view
[Sysname] web-cache precache login-url https://192.168.0.1/login
【相关命令】
· web-cache precache
· web-cache precache username
web-cache precache username命令用来配置Web Cache进行登录认证时使用的用户名和密码。
undo web-cache precache username命令用来恢复缺省情况。
【命令】
web-cache precache username username password { simple | cipher } password
undo web-cache precache username
本命令的支持情况与设备型号有关,详细说明如下表所示。
|
型号 |
说明 |
|
MSR1008 |
不支持 |
|
MSR1004-G |
不支持 |
|
MSR1004-G-5GCN |
不支持 |
|
MSR1104-G、MSR1104-G-DSL-CAT6 |
不支持 |
|
MSR2630E-X1 |
不支持 |
|
MSR3610E-X1、MSR3610E-X1-DP |
不支持 |
|
MSR3610-G-X3-DP、MSR3610-G-X3、MSR3610-G-X3-DP-DC、 MSR3610-G-X3-DC |
不支持 |
|
MSR3620-G-X3 |
支持 |
|
型号 |
说明 |
|
MSR2660-XS |
不支持 |
|
MSR2680-XS |
不支持 |
|
型号 |
说明 |
|
MSR2600-12X-WiNet |
不支持 |
|
MSR2610-13X-WiNet |
不支持 |
【缺省情况】
未配置Web Cache进行登录认证时使用的用户名和密码。
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
username:用户名,为1~32个字符的字符串,区分大小写。
cipher:表示以密文方式设置密码。
simple:表示以明文方式设置密码,该密码将以密文形式存储。
password:密码字符串,区分大小写。明文密码为1~32个字符的字符串,密文密码为1~73个字符的字符串。
【使用指导】
本命令用于配合Web Cache的预缓存功能。预缓存功能可以在用户首次请求之前,主动将指定的URL资源提前下载并缓存在本地,从而提升用户首次访问的体验。但在实际应用中,部分URL资源可能存在认证机制,需用户完成登录认证后才能访问。如果Web Cache在预缓存时未进行认证而直接请求这些URL资源,可能导致预缓存失败。
执行web-cache precache命令时,如果指定了login参数,则Web Cache设备会首先访问web-cache precache login-url命令指定的登录认证URL,然后使用web-cache precache username命令配置的用户名和密码进行认证。认证成功后,设备会获取到Cookie等有效身份认证信息。随后,Web Cache会使用该认证信息访问并下载所有需预缓存的URL资源,确保这些资源能够在用户首次访问时直接被命中。
【举例】
# 配置Web Cache进行登录认证时使用的用户名和密码。
<Sysname> system-view
[Sysname] web-cache precache username admin password simple admin@123
【相关命令】
· web-cache precache
· web-cache precache login-url
本设备不支持容器化应用管理功能、容器和开放性应用公共配置功能,本节所述命令仅用于部署和配置预缓存功能专用Docker容器。
docker命令用来管理Docker容器。
【命令】
docker [ params ]
【视图】
系统视图
【缺省用户角色】
network-admin
【参数】
params:参数输入要求同Linux系统下的docker命令,可通过输入docker –-help来获取该参数的帮助信息。
【使用指导】
执行docker load命令前,请使用display memory命令查看主用主控板上剩余内存的大小(即显示信息中Free字段的取值),剩余内存至少要大于镜像文件的大小,否则,在镜像文件加载过程中,可能会因为内存耗尽导致设备自动重启。
Comware系统集成了Docker Daemon并进行了改进,可解析Linux标准docker命令行。用户登录Comware系统后,通过CLI界面可以下发Linux系统的标准docker命令行,来创建、运行、监控容器,以及构建、存储镜像等。
如果创建的第三方容器与Comware容器共享网络命名空间,则该第三方容器仅在Comware系统本次运行过程中可用。Comware系统重启后,如需继续使用该第三方容器,请重新创建。所以,建议以非共享Comware网络命名空间方式创建第三方容器。
为了防止第三方容器过度消耗资源,对Comware容器等设备主要组件造成不利影响,设备出厂时对每个第三方容器可使用的CPU、内存资源进行了限制。在使用docker run命令启动第三方容器时,如果通过--cpuset-cpus、--cpuset-shared、--memory参数指定第三方容器可使用的CPU、内存资源超出了设备出厂限制,则以设备出厂限制为准。
【举例】
# 执行docker命令查看容器列表。
<Sysname> system-view
[Sysname] docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
d160d5ddab1f comware:MPU "/bin/v9.sh" 17 years ago Up 17 years
comware
# 创建Docker容器tftpserver,该容器与Comware共享网络命名,镜像路径为flash:/tftpd.tar.gz。
<Sysname> system-view
[Sysname] docker run --network container:comware --name tftpserver tftpd.tar.gz
tpa ip source命令用来指定开放性应用发送IP报文的源地址。
undo tpa ip source命令用来恢复缺省情况。
【命令】
tpa ip source interface interface-type interface-number
undo tpa ip source
【缺省情况】
系统视图下,开放性应用发送IP报文时的源地址为Loopback0接口的主IP地址。
接口视图下,开放性应用发送IP报文时的源地址以系统视图配置的地址为准。
【视图】
系统视图
接口视图
【缺省用户角色】
network-admin
【参数】
interface interface-type interface-number:使用接口的主IP地址作为开放性应用发送IP报文的源地址,interface-type interface-number表示接口类型和接口编号。
【使用指导】
RPM应用、和Comware共享网络空间的容器化应用与外界跨网段通信时,将使用本命令指定接口的IP地址作为开放性应用发送的IP报文的源地址。请确保指定的接口配置了IP地址,并且接口状态为Up,并且该接口和目的设备之间路由可达。否则,开放性应用不能和外界通信。
因为LoopBack口能够避免受到接口物理状态的影响,所以建议指定LoopBack口作为源接口,提高通信的可靠性。
多次执行本命令,最后一次配置的命令行生效。
【举例】
# 指定接口GigabitEthernet0/0/1的地址作为开放性应用发送IP报文的源地址。
<Sysname> system-view
[Sysname] tpa ip source interface gigabitethernet 0/0/1
tpa ipv6 source命令用来指定开放性应用发送IPv6报文的源地址。
undo tpa ipv6 source命令用来恢复缺省情况。
【命令】
tpa ipv6 source { interface interface-type interface-number | ipv6 ipv6-address }
undo tpa ipv6 source
【缺省情况】
系统视图下,开放性应用发送IPv6报文时的源地址为Loopback0接口的IPv6地址。
接口视图下,开放性应用发送IPv6报文时的源地址以系统视图配置的IPv6地址为准。
【视图】
系统视图
接口视图
【缺省用户角色】
network-admin
【参数】
interface interface-type interface-number:使用指定接口的IPv6地址作为开放性应用发送IP报文的源地址,interface-type interface-number表示接口类型和接口编号。
ipv6 ipv6-address:使用指定的IPv6地址作为开放性应用发送IP报文的源地址。源地址只能配置为全球单播地址。
【使用指导】
RPM应用、和Comware共享网络空间的容器化应用和外界跨网段通信时,将使用本命令指定的地址作为发送的IPv6报文的源地址。
配置tpa ipv6 source interface命令后,则开放性应用使用通过display ipv6 interface命令显示的该接口的第一个有效IPv6全球单播地址作为发送IPv6报文的源地址。
配置使用指定接口的IPv6地址作为开放性应用发送IP报文的源地址时:
· 需要使用配置了IPv6地址、状态为Up,并且和目的设备之间路由可达的接口。
· 建议指定的接口上只配置一个IPv6全球单播地址,否则会导致开放性应用发送IPv6报文的源地址发生变化。如果指定的接口不存在IPv6全球单播地址,则本命令不生效。
· 因为LoopBack口能够避免受到接口物理状态的影响,所以建议指定LoopBack口作为源接口,提高通信的可靠性。
配置tpa ipv6 source ipv6命令时,指定的IPv6地址必须是该设备上某个接口的IPv6地址,该配置才能生效。
多次执行本命令,最后一次配置的命令行生效。
【举例】
# 指定接口GigabitEthernet0/0/1的IPv6地址作为开放性应用发送IPv6报文的源地址。
<Sysname> system-view
[Sysname] tpa ipv6 source interface gigabitethernet 0/0/1
# 指定IPv6地址3001::1作为开放性应用发送IPv6报文的源地址。
<Sysname> system-view
[Sysname] tpa ipv6 source ipv6 3001::1
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!
