Rute proxy HTTP de la un fișier plan la un rezultat verificat
03
Configurare proxy
Configurează rute pentru un domeniu
Configurarea de bază a unui proxy invers necesită doar trei decizii, iar acest ghid te ajută cu fiecare: numele gazdei, calea și backend-ul. Căutarea unui proxy HTTP poate însemna un proxy direct sau un proxy invers, iar aici planificăm și verificăm un server pe care îl rulezi singur. Agentul nu decide niciodată pentru tine care gazdă sau cale este corectă. Scrie ceea ce îi ceri, arată fiecare modificare ca un diff și raportează rezultatul real al fiecărei comenzi, astfel încât să poți vedea efectul fiecărei decizii înainte de următoarea. Parcurge cei patru pași de mai jos în ordine și tratează planul de rutare ca documentul pe care tu și agentul îl urmați de la prima comandă până la ultima cerere.
01
Deschide dosarul
Pornește Segment Route și deschide dosarul de lucru care conține fișierele de configurare și rute. Instrumentele pentru fișiere funcționează în acest dosar, așa că un dosar curat, cu doar fișierele relevante pentru acest domeniu, menține diff-urile scurte și rezultatele căutării lizibile. Dacă fișierele tale live se află pe un server pe care îl deții, copiază-le mai întâi în dosar, sau alege mediul SSH pentru comenzi și păstrează planul în dosar.
02
Scrie planul
Cere agentului să scrie routing-plan.txt cu rutele tale, redirecționările și codul de stare pe care îl aștepți pentru fiecare. Planul este text simplu, îl poți edita și este lista pe care o compari cu rezultatele reale la final. Specifică o așteptare pentru fiecare rută și fiecare redirecționare, astfel încât nicio regulă să nu rămână fără verificare. Păstrează fișierul scurt și lizibil.
03
Editează și testează
Aprobă diff-ul pentru fiecare regulă, apoi lasă Shell să ruleze comanda de testare a configurației înainte de orice reîncărcare. În modul Ask first, agentul se oprește înainte de fiecare modificare, iar cardul pentru test afișează codul de ieșire real și output-ul complet. Nu reîncărca niciodată înainte ca testul să treacă și păstrează copia de rezervă a fișierului anterior până când noul comportament este confirmat.
04
Verifică rezultatul
Trimite o cerere către fiecare adresă cu comanda ta de request, citește codul de stare și antetul Location și compară-le cu planul tău. Dacă o valoare diferă, restaurează copia de rezervă, reîncarcă și modifică din nou o regulă. Repetă până când fiecare așteptare din plan se potrivește cu rezultatul, apoi păstrează planul final ca înregistrare a ceea ce ar trebui să facă configurația.
Un plan de rutare în text simplu
Segment Route · Scrie planul de rutare● Ask first
Scrie routing-plan.txt pentru domeniul meu cu rutele, redirecționările și codul de stare pe care îl aștept pentru fiecare.
list_dir.3 fișiere
read_fileroutes.confîncărcat
write_filerouting-plan.txtsalvat
Shellyour request commandînregistrat
așteaptă aprobarea ta înainte de următorul pasRespingeAcceptă
routing-plan.txt
# routing plan for my own domain
# one line per rule, written before any change
route 1: host app, path /api, goes to service api
route 2: host app, path /, goes to service web
route 3: host admin, path /, goes to service admin
redirect 1: old page to new page, code 301
redirect 2: www host to bare host, code 301
redirect 3: http to https, code 301
# status to expect after the change
expect 1: app path /api answers with a success code
expect 2: old page answers 301 and gives the new address
# keep the old configuration file as a backup
# end of routing plan
Fiecare linie este o regulă sau o așteptare. Scrisă prima dată, planul îți oferă ceva cu care să compari codurile de stare reale după fiecare modificare, iar o modificare care rupe o așteptare este ușor de identificat. Gazdele, căile și serviciile sunt doar exemple; înlocuiește-le cu ale tale și păstrează planul lângă configurația pe care o descrie. Cuvântul redirect împreună cu un cod este suficient pentru ca agentul să știe ce să scrie.
O ordine sigură pentru fiecare modificare proxy HTTP
Găsește fișierele care conțin regulile tale
Acest ghid de self-hosting cu un server proxy invers în fața serviciilor tale începe prin a găsi unde sunt stocate regulile. list_dir arată dosarul de lucru, glob listează fișierele care seamănă cu liste de rute, iar grep le caută pentru cuvintele route și redirect. Rezultatul este o listă scurtă cu nume de fișiere și numere de linie. Nimic nu se schimbă încă. Alege fișierul care conține regulile pentru domeniul tău, deschide-l cu read_file și trimite o cerere către fiecare adresă cu comanda ta de request pentru a nota codul de stare curent. Revizuiește lista în modul Plan only dacă vrei ca agentul să propună mai întâi ordinea lucrărilor și salvează notele lângă planul tău de rutare, astfel încât primele coduri de stare să fie înregistrate.
Editează o regulă pe rând
Modifică o regulă pe rând, deoarece un diff mic este ușor de judecat. edit_file citește fișierul, propune noua linie și arată un diff cu liniile adăugate și eliminate. Când apare o întrebare despre o regulă de redirecționare a unui subdomeniu, agentul arată regula alături de codul pe care ar trebui să îl returneze, iar tu decizi. În modul Ask first, nimic nu este salvat până nu accepți. Auto-run ar salva imediat, așa că folosește-l doar pe fișiere pe care le poți restaura. Păstrează vechiul fișier ca copie de rezervă, acceptă diff-ul și treci la următorul pas. Respinge diff-ul dacă o linie te surprinde și cere o modificare mai mică.
Testează înainte de a reîncărca
O reîncărcare cu un fișier defect poate scoate un site funcțional din funcțiune, așa că testează mai întâi. Shell rulează comanda de testare a configurației, iar succesul este judecat după codul real de ieșire: un cod de succes înseamnă că fișierul a fost analizat, orice altceva înseamnă că rămâi pe configurația veche. Cardul se extinde pentru a afișa output-ul complet, inclusiv numărul de linie al unei greșeli. Corectează-l cu un alt diff mic. După un test reușit, reîncarcă, trimite o cerere către adresă și compară codurile de stare http ale rulării vechi și celei noi. Revizuiește output-ul singur, deoarece un test reușit spune doar că sintaxa este validă și nu că ruta este corectă.
Citește codurile și revino la starea anterioară
Codurile de stare sunt grupate după prima cifră: 2xx succes, 3xx redirecționare, 4xx eroare client, 5xx eroare server. Pentru un proxy, 502 înseamnă un răspuns invalid de la backend, 503 înseamnă că serviciul nu este disponibil, 504 înseamnă că backend-ul a răspuns prea lent, iar 404 înseamnă nu a fost găsit. http_get preia o pagină a propriului tău serviciu, iar comanda ta de request arată noua adresă a unei redirecționări. Dacă un cod diferă de planul tău, restaurează fișierul de rezervă, reîncarcă și testează din nou. Apoi modifică planul sau regula și repetă, o regulă pe rundă. Un plan de rutare scurt și un fișier de rezervă sunt tot rollback-ul de care ai nevoie.
Segment Route pentru Windows
Planifică următoarea ta modificare de rutare cu agentul