Php 如何从电报中检测用户http引用

Php 如何从电报中检测用户http引用,php,http-referer,telegram,Php,Http Referer,Telegram,我想通过php检测来自我的电报组(内联链接)的用户 但服务器不返回HTTP\u REFERER 如何可能referer是一个客户端头,您无法确定它的设置。如果您想检查用户是否来自电报应用程序,则参考者不会出现在其他应用程序中,请求由浏览器或其他任何程序创建 浏览器为链接创建引用,并且仅为同一协议创建引用。http->https无法工作 您不能依赖于referer头,所有头都是客户端的。只需使用不同的地址链接到您的网站。如果发送到电报的链接,则为参数预设 我通过在URL末尾添加?telegram=

我想通过php检测来自我的电报组(内联链接)的用户

但服务器不返回
HTTP\u REFERER


如何可能

referer是一个客户端头,您无法确定它的设置。如果您想检查用户是否来自电报应用程序,则参考者不会出现在其他应用程序中,请求由浏览器或其他任何程序创建

浏览器为链接创建引用,并且仅为同一协议创建引用。http->https无法工作


您不能依赖于referer头,所有头都是客户端的。只需使用不同的地址链接到您的网站。如果发送到电报的链接,则为参数预设

我通过在URL末尾添加
?telegram=1
解决了这个问题

然后我可以从电报通道检测用户

另一种创建不同文件名或创建子域的方法

tg.example.com/[MY-QUERY]


它是HTTP\u REFERER
,但您需要检查它的setNo,notset,这里的打字错误,同时我会
打印($\u SERVER)
@dale,但通过在我的链接末尾添加
?telegram=1
,我可以简单地检测;-)
id=message.text.replace('/start ','').split(" ",1)[0]
fv.open('./id/' + str(id) + '/referal.txt', 'a').write(str(chat_id) + "\n") 
r=fv.open('./id/' + str(id) + '/referal.txt', 'r').read().split("\n")
l=len(r)
bot.send_message(chat_id, "Your ball: " + str(l))