登录 立即注册

找到2025个回复 (用户: 老虎会游泳)

老虎会游泳 107楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,弄好了

图片.png(49.5 KB)

老虎会游泳 10楼回复 老虎会游泳拒绝GPT学术不端 (2023-03-30//)
老虎会游泳 104楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@童真再见,12:02:45是问题停止的时刻,12:02:46你重新登录了。

3月 30 12:02:33 hu60-kunpeng run.sh[268701]: time="2023-03-30T12:02:33+08:00" level=warning msg="authentication failed: sid not found"
3月 30 12:02:33 hu60-kunpeng run.sh[268701]: time="2023-03-30T12:02:33+08:00" level=warning msg="authentication failed: sid not found"
3月 30 12:02:33 hu60-kunpeng run.sh[268701]: time="2023-03-30T12:02:33+08:00" level=warning msg="authentication failed: sid not found"
3月 30 12:02:39 hu60-kunpeng run.sh[268701]: time="2023-03-30T12:02:39+08:00" level=warning msg="authentication failed: sid not found"
3月 30 12:02:45 hu60-kunpeng run.sh[268701]: time="2023-03-30T12:02:45+08:00" level=warning msg="authentication failed: sid not found"
3月 30 12:02:46 hu60-kunpeng run.sh[268701]: time="2023-03-30T12:02:46+08:00" level=info msg="user 童真再见 is connected, there are currently 1 connections"
3月 30 12:02:46 hu60-kunpeng run.sh[268701]: time="2023-03-30T12:02:46+08:00" level=info msg="user 童真再见 is connected, there are currently 2 connections"
老虎会游泳 8楼回复 老虎会游泳拒绝GPT学术不端 (2023-03-30//)

@小兽,这是你的推送历史记录,好像也不是太频繁啊,有最近几天吗?

图片已隐藏,在消息中可见

老虎会游泳 7楼回复 老虎会游泳拒绝GPT学术不端 (2023-03-30//)

@小兽,点进bot的个人信息页面,可以开启免打扰。免打扰消息不会推送。

老虎会游泳 101楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,我决定把HTTP/1.1 503 Service Unavailable改成HTTP/1.1 429 Too Many Requests,后者更符合标准。

老虎会游泳 100楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,对

老虎会游泳 97楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,目前有一个头信息:

	header('HTTP/1.1 503 Service Unavailable');
    header('Retry-After: '.$needWaitSeconds);
老虎会游泳 96楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,我可以添加一个功能来返回JSON

老虎会游泳 94楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj

我会加一个参数,由管理员来指定这个头的 key, value就是用户的IP。这样hu60bot就可以在这个 api 报超速时,返回ws客户端超速对吧?

是的。

老虎会游泳 92楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfjhu60bot怎么拿到客户端真实IP:目前是以下头信息,但我建议不要假定管理员开了代理,首先使用remote addr。除非管理员指定了一个头信息参数,再使用它。

        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header REMOTE-HOST $remote_addr;
老虎会游泳 90楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,是hu60bot访问了/user.index.json,不是用户访问了/user.index.json,nginx不可能神奇的感知到背后的用户IP是什么。

老虎会游泳 89楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,所以我们需要req.Header.Set(一个自定义头信息的变量, 用户的真实IP)

老虎会游泳 88楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,如果http.NewRequestWithContext(ctx, http.MethodGet, c.fullURL("/user.index.json")不传递IP,nginx显然不知道用户的IP是什么。

老虎会游泳 86楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj

你可以在HTTP请求中添加头信息,把速率限制转移给单个用户。

图片.png(56.18 KB)

老虎会游泳 85楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,这里达到了限速,所以没有人可以认证通过。顺便一提 udSySELORQDee6_Jxv-YPMEAsAAA 已经被我设为无效了,所以公开也没关系。

		// 获取sid(跨域时禁用cookie)
		sid := getRequestParam(r, "sid", noCookie)
		if sid == "" || sid == "udSySELORQDee6_Jxv-YPMEAsAAA" {
			m.responseUnauthenticated(ws)
			logrus.Warn("authentication failed: sid not found")
			return
		}

        // 这里达到了限速
		res, err := m.hu60Client.GetProfile(context.Background(), sid)
		if err != nil {
			m.responseUnauthenticated(ws)
			logrus.Warn("authentication failed: ", err.Error())
			return
		}
老虎会游泳 83楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,因为现在的超速都算在127.0.0.1头上了,所以大家都连不上。把真实IP填充在头信息里,我就可以把限速算在具体用户头上了。

老虎会游泳 82楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,我还有一个建议,你可以在HTTP请求中添加头信息,把速率限制转移给单个用户。

比如,把用户的真实IP填充在HTTP_CF_CONNECTING_IP里,然后我在hu60 api里添加真实IP判断。

这个头信息的名称要可自定义,因为我不想让别人猜到来伪造IP记录。

/**
 * 特定IP判定范围
 */
$CC_IP_LIMIT = [
    // 设置特定IP n秒最多能访问的次数
    '127.0.0.1' => 100,
];

/**
 * 真实IP
 */

// 无代理时使用
$CC_REAL_IP = $_SERVER['REMOTE_ADDR'];

// 采用CloudFlare或百度云加速代理时使用
#$CC_REAL_IP = $_SERVER['HTTP_CF_CONNECTING_IP'];
老虎会游泳 79楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

我已经暂时禁止 @童真再见 的当前sid连接WebSocket,目前机器人已上线。@TabKey9,此外这可能就是机器人越来越慢的原因。

老虎会游泳 78楼回复 rkonfj[网页插件] hu60bot: 立即与openai 对话 (2023-03-30//)

@rkonfj,达到速率上限之后,会返回这样的页面:

ERRO[2023-03-30T09:57:46+08:00] answerHu60 get chatroom err: error, status code: 503, message: <!DOCTYPE html>
<html>
<head>
        <meta charset="utf-8" />
        <title>刷新不规范,虎友两行泪</title>
</head>
<body>
        <h4>
                虎绿林第三区交通委提醒您:<br/>
                网址千万条,耐心第一条。<br/>
                刷新不规范,虎友两行泪。
        </h4>
        虎绿林低速网络限速10秒内最多访问50次(每秒5次)。<br/>
        您在20秒内访问了169次(每秒8.45次),您已超速。<br/>
        作为惩罚,吊销您的虎绿林通行证14秒钟,在这段时间内您将不能访问虎绿林。<br/>
        您的IP地址为122.9.147.96,违章记录已存档。
        请勿反复刷新,否则违章记录将延续。<br/>
</body>
</html> 

建议的解决方案:限制单个用户的最大连接数,比如限制为最大10个连接。注意:要按sid判断连接数,不能按uid判断,因为sid转uid要查询虎绿林API。

下一页 上一页 (19 / 102页)

7月3日 14:28 星期三

本站由hu60wap6华为CPU驱动

备案号: 京ICP备18041936号-1