SMART PHP Proxy 0.4 - popis
Úvodem: PHP Proxy server, je
jednoduchý forwarder ("předávač") HTTP požadavků.
Jelikož posíláme požadavek metodou POST (metoda GET není díky
limitu maximální velikosti přenášených dat příliš vhodná -
s určitými omezeními by se ale dala použít), můžeme hlavičku
požadavku modifikovat různými algoritmy, ať už šifrovacími
nebo kompresními (stejně tak můžeme kompresní algoritmy použít
na data odesílaná zpět prohlížeči, čímž můžeme do značné
míry zvýšit rychlost a propustnost serveru). Této vlastnosti využijeme
například, potřebujeme-li odeslat požadavek přes námi
neadministrovaný proxy server, který díky svým limitům neumožňuje
standardní průchodnost našich HTTP požadavků (např. různé
blacklisty na serverech SQUID atp.). PHP proxy pracuje velice jednoduše,
činnost skriptu si popíšeme v následujícím textu.
Jak skript funguje ? Abychom získali požadavek v rozkódovaném stavu, použijeme funkci base64_decode. Pokud POSTdata neobsahují proměnnou timeout, nastavíme ji na 30 sekund. Pro otevření spojení se serverem potřebujeme znát jeho adresu a port, na kterém server očekává požadavky. Tyto údaje obsahuje hlavička požadavku - konkrétně řádek začínající "Host:".
Poznámka: pokud ladíte PHP proxy server, který je umístěn na localhostě a pokoušíte-li se otevřít spojení přes další proxy server, ketrý vám zprostředkovává připojení do sítě internet - spojení se nepodaří a proxy zahlásí chybovou zprávu s error-code 0. Download zdrojového kódu je k dispozici zde. Skript si můžete vyzkoušet na adrese http://milanc.host.sk/smartproxy/smartproxy.php. |
||||||||||||||||