// 页面动态加密配置 Vue.component("http-encryption-config-box", { props: ["v-encryption-config", "v-is-location", "v-is-group"], data: function () { let config = this.vEncryptionConfig return { config: config, htmlMoreOptions: false, javascriptMoreOptions: false, keyPolicyMoreOptions: false, cacheMoreOptions: false, encryptionMoreOptions: false } }, methods: { isOn: function () { return ((!this.vIsLocation && !this.vIsGroup) || this.config.isPrior) && this.config.isOn } }, template: `
| 启用页面动态加密 |
启用后,将对 HTML 页面中的 JavaScript 进行动态加密,有效抵御批量爬虫和脚本工具。 |
| 排除 URL |
这些 URL 将跳过加密处理,支持正则表达式。 |
| HTML 加密 |
加密 HTML 页面中的 JavaScript 脚本。 |
| 加密内联脚本 |
加密 HTML 中的内联 <script> 标签内容。 |
| 加密外部脚本 |
加密通过 src 属性引入的外部 JavaScript 文件。 |
| URL 匹配规则 |
如果填写了匹配规则,表示只对这些 URL 进行加密处理;如果不填则表示支持所有的 URL。 |
| JavaScript 文件加密 |
加密独立的 JavaScript 文件(.js 文件)。 |
| URL 匹配规则 |
如果填写了匹配规则,表示只对这些 URL 进行加密处理;如果不填则表示支持所有的 URL。 |
| 服务器端密钥 |
用于生成加密密钥的密码,建议使用复杂的随机字符串。默认密钥仅用于测试,生产环境请务必修改! |
| 时间分片(秒) |
加密密钥每隔多少秒更换一次。时间越短越安全,但可能影响性能。建议 60-120 秒,默认 60 秒。 |
| IP CIDR 前缀长度 |
将用户 IP 地址的前多少位作为识别依据。例如设置为 24 时,192.168.1.1 和 192.168.1.2 会被视为同一用户。默认 24。 |
| 简化 User-Agent |
开启后,只识别浏览器类型(如 Chrome、Firefox),忽略版本号等细节,避免因浏览器自动更新导致解密失败。 |
| 启用缓存 |
开启后,相同内容的加密结果会被缓存,减少重复计算,提升响应速度。 |
| 缓存 TTL(秒) |
缓存的有效期,超过这个时间后缓存会自动失效。建议与上面的"时间分片"保持一致。默认 60 秒。 |
| 最大缓存条目数 |
最多缓存多少个加密结果。数量越大占用内存越多,建议根据服务器内存情况调整。默认 1000。 |