Պրոքսիի հղումը չի բացվում. tg://proxy, t.me/proxy և Telegram-ի սխալները
Սեղմեցիք հղումը՝ և ոչինչ, կամ Telegram-ը պատասխանում է «The proxy link is invalid»։ Վերլուծում ենք՝ որտեղ է հղումը կոտրվում և ինչ է նշանակում յուրաքանչյուր հաղորդագրություն։
Բովանդակություն
Պրոքսիի հղումը չի բացվում երեք պատճառներից մեկով. համակարգում չկա tg:// հղումներն ընդունող հավելված; հղումը վնասվել է պատճենելիս; կամ Telegram-ը կարդացել է այն և մերժել պարամետրերը, այդ դեպքում գրում է, թե կոնկրետ ինչն է սխալ։ Ստորև՝ ինչպես է Telegram-ը վերլուծում հղումը, ինչ են նշանակում նրա հաղորդագրությունները և ինչպես մեկ րոպեում գտնել սխալը։ Ստուգումների մասին ասվածը վերցված է Telegram Desktop-ի և Android-ի Telegram-ի սկզբնական կոդից (2026 թվականի հոկտեմբեր)։
Ինչպես է Telegram-ը կարդում հղումը
MTProto պրոքսիի հղումն ունի երկու գրառում նույն պարամետրերով՝ server, port և secret, երեքն էլ պարտադիր են՝
https://t.me/proxy?server=proxy.example.com&port=443&secret=ee…
tg://proxy?server=proxy.example.com&port=443&secret=ee…
- t.me/proxy՝ սովորական վեբ հղում։ Զննարկչում այն բացում է Telegram-ի էջ «Apply MTProxy Settings» կոճակով, որը տանում է նույն հղումին՝
tg://proxyտեսքով։ Telegram-ի փաստաթղթերի համաձայն՝t.me-ի փոխարեն կարելի է գրելtelegram.meկամtelegram.dog; - tg://proxy՝ հավելվածի հղում։ Telegram-ի փաստաթղթերը հաճախորդներից պահանջում են օպերացիոն համակարգում գրանցել նման հղումների մշակիչ. սեղմումը հղումը փոխանցում է Telegram-ին, եթե այն տեղադրված է։
Հավելվածի ներսում երկու ձևերը հանգում են մեկին։ Telegram Desktop-ը t.me, telegram.me կամ telegram.dog հղումը (այդ թվում՝ www.-ով) վերածում է tg://proxy-ի և միայն դրանից հետո է վերլուծում պարամետրերը։ Android-ի Telegram-ը ճանաչում է նույն երեք տիրույթները և tg:proxy կամ tg://proxy գրառումը։
Սեղմումը ոչինչ չի անում
Եթե tg://proxy հղմամբ ոչինչ չի լինում, համակարգը չգիտի՝ ում փոխանցել այն։ Այդպես լինում է, երբ Telegram-ը տեղադրված չէ, երբ հղումը բացում են համակարգչում, որտեղ կա միայն զննարկչային տարբերակը, կամ երբ ծրագիրը, որում սեղմել եք, նման հղումները համակարգին չի փոխանցում։ Ինչ անել՝
- Սկիզբը փոխարինեք
https://t.me/proxy?-ով՝ պարամետրերը թողնելով ինչպես կան, և բացեք հղումը զննարկչում. Telegram-ի էջը կառաջարկի բացել այն հավելվածում։ - Եթե սա էլ չօգնեց, պրոքսին ավելացրեք ձեռքով. պրոքսիի կարգավորումներում ընտրեք MTProto տեսակը և հղումից տեղափոխեք սերվերը, պորտը և secret-ը։
- Telegram Desktop-ում կարելի է պատճենել հղումն ամբողջությամբ և պրոքսիի պատուհանում սեղմել «Add proxy from clipboard». հաճախորդն ինքը կվերլուծի պարամետրերը։
Պրոքսիի պատուհանը տարբեր սարքերում որտեղ է գտնվում՝ Android-ի, iPhone-ի և համակարգչի հրահանգներում։
Հղումը վնասվել է պատճենելիս
Առավել հաճախ հղումը կոտրվում է ճանապարհին. այն պատճենում են վեբ էջից, փաստաթղթից կամ փոխանցում են մեկ այլ մեսենջերով։ Բնորոշ վնասվածքները՝
- Ամպերսանդը դարձել է
&։ HTML-ում այն գրվում է այսպես։ Հաճախորդը պարամետրերը բաժանում է&նշանով ևport-ի փոխարեն տեսնում էamp;portանունով պարամետր. նրա համար պորտ նշված չէ; - Secret-ը կտրված է։ Երկար ee-secret-ը տեղափոխվում է նոր տող, և տիրույթով պոչը կորչում է;
- Մեջտեղում բացատ կամ տողադարձ է հայտնվել։ Secret-ը դադարում է կարդացվել որպես տասնվեցական տող;
- Հղումը ձեռքով «ուղղել» են։ Secret-ում մեկ փոփոխված նիշը այլ բանալի է, և այդպիսի հաճախորդին պրոքսին չի թողնի, թեկուզ հղումը հաջողվել է բացել։
Երկու բան Telegram Desktop-ը ներում է. պարամետրերի անուններում տառաշարը (Server և server նրա համար նույնն են) և secret-ում + ու / նշանները. դրանք նա փոխարինում է - և _-ով, որպեսզի base64 ձևաչափի secret-ը գրառման երկու տարբերակում էլ նույն կերպ կարդացվի։
Ինչ են նշանակում Telegram Desktop-ի հաղորդագրությունները
Եթե հղումը հասել է Telegram Desktop-ին, բայց պարամետրերը ստուգումը չեն անցել, հաճախորդը ցույց է տալիս երեք հաղորդագրություններից մեկը։ Որը՝ կախված է նրանից, թե ինչն է սխալ՝
| Հաղորդագրություն | Երբ է հայտնվում | Ինչ անել |
|---|---|---|
| «The proxy link is invalid.» | սերվեր չկա, պորտը նշված չէ կամ զրո է, secret-ը չափազանց կարճ է կամ պարունակում է նիշեր, որոնք չկան ո՛չ տասնվեցական գրառման, ո՛չ base64-ի մեջ | համեմատել հղումը սկզբնականի հետ, փնտրել &, բացատներ և կտրված secret |
| «Your Telegram Desktop version doesn't support this proxy type or the proxy link is invalid…» | secret-ը կարդացվում է, բայց չի համապատասխանում ոչ մի հայտնի տեսակի. օրինակ՝ 17 բայթ առանց dd նախածանցի, երկար secret առանց ee նախածանցի կամ hex-secret, որի նիշերի մի մասը կորել է | համեմատել secret-ի երկարությունը. եթե այն ամբողջական է՝ թարմացնել հաճախորդը, եթե փչացած է՝ պետք է նոր հղում |
| «This proxy link uses invalid secret parameter…» | secret-ը սկսվում է ee-ով, բայց չի կարդացվում որպես տասնվեցական տող. օրինակ՝ ավելորդ կամ կորած նիշի պատճառով | պրոքսիի տիրոջից խնդրել նոր հղում. հաղորդագրությունն ուղիղ խորհուրդ է տալիս դիմել նրան |
Վերջին հաղորդագրությունը կախված է փչացած secret-ի երկարությունից. մի մասի դեպքում դրա փոխարեն կհայտնվի ընդհանուր «The proxy link is invalid»։ Իսկ այն տեքստը, որում պրոքսիի հղում չկա, clipboard-ից ավելացնելիս Desktop-ը գրում է կարճ՝ «This is not a proxy link»։
Ինչ երկարության secret է սպասում Telegram Desktop-ը
Տասնվեցական գրառմամբ secret-ը հաճախորդն ընդունում է երեք տեսքով։ Դրանցով հարմար է ստուգել հղումը՝ մինչև այն բացելը՝
| Secret-ի տեսակ | Բայթ | Նիշ hex-ում |
|---|---|---|
| բանալի առանց նախածանցի | 16 | 32 |
dd + բանալի | 17 | 34 |
ee + բանալի + տիրույթ | 21-ից | 42-ից |
ee-secret-ի համար 21 բայթը ստորին սահմանն է. նախածանց, բանալու 16 բայթ և տիրույթի առնվազն չորս բայթ։ Secret-ը կարող է գրված լինել նաև base64-ով. այդպիսի ձևը տալիս է, օրինակ, mtg-ն. հաճախորդը այն ստուգում է նույն կանոններով՝ վերծանելուց հետո։
Ինչպես վերլուծել secret-ը ըստ նիշերի և կարդալ քողարկման տիրույթը՝ «dd և ee secret-ներ. ինչպես կարդալ հղումը» հոդվածում։
Ինչպես է հղումը ստուգում Android-ը
Android-ի Telegram-ը MTProto պրոքսիի հղումը վերլուծելիս ստուգում է միայն, որ նշված են սերվերը և զրոյից մեծ պորտը։ Secret-ը այս քայլում չի ստուգվում. միացման պատուհանը կբացվի նաև փչացած secret-ով, իսկ սխալը կհայտնվի արդեն միանալիս. պրոքսին պարզապես չի պատասխանի։ Ուստի հեռախոսում «հղումը բացվեց»-ը դեռ չի նշանակում «հղումը ճիշտ է»։
Նույն կոդից ևս մեկ մանրուք. Android-ը պրոքսիի հղումը ճանաչում է հոսթի ճշգրիտ անունով՝ t.me, telegram.me կամ telegram.dog։
Հղումը բացվեց, բայց պրոքսին չի միանում
Եթե միացման պատուհանը հայտնվել է և ցույց է տվել սերվերն ու պորտը, հղումը կարդացվել է։ Հետո հարցն արդեն հղմանը չէ, այլ սերվերին ու ցանցին. հասցեն հասանելի՞ է, տերը չի՞ փոխել քողարկման տիրույթը կամ secret-ը, պրոքսին աշխատո՞ւմ է այլ ցանցում։ FakeTLS ռեժիմի առանձին հաճախակի պատճառն այն է, որ secret-ի տիրույթը չի համընկնում սերվերում կարգավորվածի հետ։
Ստուգում մեկ րոպեում
- Հղումը սկսվում է
tg://proxy?կամhttps://t.me/proxy?-ով։ - Դրանում կան
server,portևsecret, իսկ նրանց միջև՝ պարզ&, առանցamp;-ի։ - Պորտը զրոյից մեծ թիվ է, առավել հաճախ՝ 443։
- Secret-ի երկարությունը 32, 34 կամ առնվազն 42 նիշ է, դրանում միայն թվեր և a–f տառեր են (կամ base64-ի նիշեր, եթե այդպես է տվել պրոքսիի ծրագիրը)։
- Secret-ը տեղադրված է ամբողջությամբ, առանց բացատների և տողադարձերի։
- Եթե
tg://-ը չի բացվում, նույն հղումըhttps://t.me/proxy?-ով՝ զննարկչում։
Հաճախ տրվող հարցեր
Ինչու՞ tg://proxy հղումը ոչինչ չի բացում։
tg:// հղումը մշակում է այն հավելվածը, որը համակարգում գրանցել է այս հասցեն։ Եթե Telegram-ը սարքում տեղադրված չէ կամ համակարգը նման հղումները նրա հետ չի կապել, սեղմումը ոչնչի չի բերում։ Բացեք նույն հղումը t.me/proxy տեսքով զննարկչում կամ սերվերը, պորտը և secret-ը մուտքագրեք ձեռքով։
Ի՞նչ է նշանակում «The proxy link is invalid» Telegram Desktop-ում։
Հաճախորդը հղման մեջ չի գտել անհրաժեշտ պարամետրերը, կամ դրանք սխալ են. սերվեր չկա, պորտը նշված չէ կամ զրո է, secret-ը չափազանց կարճ է կամ գրված է կողմնակի նիշերով։ Առավել հաճախ հղումը վնասվել է պատճենելիս։
Telegram Desktop-ը խնդրում է թարմացնել, բայց տարբերակը վերջինն է։ Ինչո՞ւ։
Այս հաղորդագրությունը հայտնվում է նաև այն ժամանակ, երբ secret-ը կարդացվում է, բայց չի համապատասխանում ոչ մի հայտնի տեսակի. օրինակ՝ 17 բայթ առանց dd նախածանցի, երկար secret առանց ee նախածանցի կամ կտրված hex-secret։ Եթե secret-ը փչացած է, թարմացումը չի օգնի. պետք է ճիշտ հղում։
Հղումը բացվեց, բայց պրոքսին չի միանում. սա նույն խնդի՞րն է։
Ոչ։ Եթե միացման պատուհանը հայտնվել է, հղումը կարդացվել է։ Հետո գործը սերվերի հասանելիության, ռեժիմի կամ ցանցի մեջ է. սա այլ ախտորոշում է։
Աղբյուրներ
- Telegram: deep links — պրոքսիի հղումներ
- Telegram Desktop: local_url_handlers.cpp — t.me և tg:// հղումների վերլուծություն
- Telegram Desktop: mtproto_proxy_data.cpp — secret-ի ստուգում
- Telegram Desktop: connection_box.cpp — հղման սխալների հաղորդագրություններ
- Telegram Desktop: ինտերֆեյսի տողեր (lang.strings)
- Android-ի Telegram: ProxySettings.java — հղման վերլուծություն