@@ -14,11 +14,14 @@ export default {
1414 const url = new URL ( request . url ) ;
1515 const UA = request . headers . get ( 'User-Agent' ) || 'null' ;
1616 const upgradeHeader = request . headers . get ( 'Upgrade' ) ;
17- const 管理员密码 = env . ADMIN || env . admin || env . UUID || env . uuid || env . PASSWORD || env . password || env . pswd || env . TOKEN || env . KEY ;
17+ const 管理员密码 = env . ADMIN || env . admin || env . PASSWORD || env . password || env . pswd || env . TOKEN || env . KEY ;
1818 const 加密秘钥 = env . KEY || '勿动此默认密钥,有需求请自行通过添加变量KEY进行修改' ;
1919 const userIDMD5 = await MD5MD5 ( 管理员密码 + 加密秘钥 ) ;
20- const userID = [ userIDMD5 . slice ( 0 , 8 ) , userIDMD5 . slice ( 8 , 12 ) , '4' + userIDMD5 . slice ( 13 , 16 ) , userIDMD5 . slice ( 16 , 20 ) , userIDMD5 . slice ( 20 ) ] . join ( '-' ) ;
21- 反代IP = 反代IP ? 反代IP : request . cf . colo + '.PrOxYIp.CmLiUsSsS.nEt' ;
20+ const userID = env . UUID || env . uuid || [ userIDMD5 . slice ( 0 , 8 ) , userIDMD5 . slice ( 8 , 12 ) , '4' + userIDMD5 . slice ( 13 , 16 ) , userIDMD5 . slice ( 16 , 20 ) , userIDMD5 . slice ( 20 ) ] . join ( '-' ) ;
21+ if ( env . PROXYIP ) {
22+ const proxyIPs = await 整理成数组 ( env . PROXYIP ) ;
23+ 反代IP = proxyIPs [ Math . floor ( Math . random ( ) * proxyIPs . length ) ] ;
24+ } else 反代IP = 反代IP ? 反代IP : request . cf . colo + '.PrOxYIp.CmLiUsSsS.nEt' ;
2225 const 访问IP = request . headers . get ( 'X-Real-IP' ) || request . headers . get ( 'CF-Connecting-IP' ) || request . headers . get ( 'X-Forwarded-For' ) || request . headers . get ( 'True-Client-IP' ) || request . headers . get ( 'Fly-Client-IP' ) || request . headers . get ( 'X-Appengine-Remote-Addr' ) || request . headers . get ( 'X-Forwarded-For' ) || request . headers . get ( 'X-Real-IP' ) || request . headers . get ( 'X-Cluster-Client-IP' ) || request . cf ?. clientTcpRtt || '未知IP' ;
2326 if ( env . GO2SOCKS5 ) SOCKS5白名单 = await 整理成数组 ( env . GO2SOCKS5 ) ;
2427 if ( ! upgradeHeader || upgradeHeader !== 'websocket' ) {
@@ -317,7 +320,7 @@ export default {
317320 return fetch ( new Request ( 反代URL . protocol + 反代URL . host + url . pathname + url . search , { method : request . method , headers : 新请求头 , body : request . body , cf : request . cf } ) ) ;
318321 } catch ( error ) { }
319322 return new Response ( await nginx ( ) , { status : 200 , headers : { 'Content-Type' : 'text/html; charset=UTF-8' } } ) ;
320- } else { // ws代理
323+ } else if ( 管理员密码 ) { // ws代理
321324 await 反代参数获取 ( request ) ;
322325 const { 0 : client , 1 : server } = new WebSocketPair ( ) ;
323326 server . accept ( ) ;
0 commit comments