[PHP] POST požadavek na zabezpečený server

Webdesign, HTML, CSS, Flash, PHP, ASP, .NET, JavaScript. Kritika www stránek na Smetišti.

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod francesco3 1. 6. 2008 17:35

Zdravím.
Mám takový problém. Pokoušim se ze stránky na serveru 1 (http) odeslat požadavek na server 2 (https), resp. se na server 2 přesměrovat a to tak, že bude zároveň odesláno něco málo POST dat (pár proměnných) a že server 2 musí spojení obdržet na portu 443, tedy zabezpečeně.

Zkoušel jsem fsockopen() - http OK, ssl bad request

Přes header() se zas nedají (?) posílat data.

Můžete mi prosím poradit, jak na to? Staší trochu postrčit...nebo nakopnout... Díky.
PS: Jde to bez knihovny CURL?
francesco3
Junior
Uživatelský avatar

Odeslat příspěvekod K8 1. 6. 2008 18:07

francesco3 píše:PS: Jde to bez knihovny CURL?

nejde
K8
Pokročilý

Odeslat příspěvekod francesco3 1. 6. 2008 20:15

Tak tím se to patrně vysvětluje. A já myslel, že jsem hloupej. Teda myslel jsem, že jsem uplně hloupej. Tak vám děkuji. Nechám si ji tedy nainstalovat.
francesco3
Junior
Uživatelský avatar

Odeslat příspěvekod francesco3 3. 6. 2008 15:44

Tak nakonec jsem to vyřešil tou knihovnou CURL. Jen teď dumám, jak ten požadavek spáchat tak, abych se jaksi přesměroval na adresu toho požadavku po jeho odeslání. K vzdálenému serveru ale přístup nemaám.
francesco3
Junior
Uživatelský avatar

Odeslat příspěvekod francesco3 6. 6. 2008 16:27

Nějaký nápad?
francesco3
Junior
Uživatelský avatar

Odeslat příspěvekod wojta 6. 6. 2008 16:37

Moc tomu asi nerozumíme, něco se ti vrátí v tom požadavku. Možná v hlavičce nějaký redirect. Pokud je to nějaká posloupnost redirectů, tak to co příjde vezmeš, rozparsuješ a zjistíš kam a co se posílá a pak zase pošleš znova, atd...
C:\>ver
MS-DOS Version 5.00
wojta
Pokročilý
Uživatelský avatar

Odeslat příspěvekod francesco3 6. 6. 2008 16:46

Zkusím to napsat co nejsrozumitelněji - na server B odešlu ze serveru A POST požadavek pomocí knihovny CURL, ale výsledek se mi zobrazí jaksi pod url serveru A, což je špatně.
francesco3
Junior
Uživatelský avatar

Odeslat příspěvekod wojta 6. 6. 2008 18:17

To není špatně, je to v pořádku (tedy není tam žádná chyba, ale není to požadovaný výsledek). Ty jen nahradíš obsah té své stránky obsahem, který získáš tou cURL. Součástí té odpovědi je dost možná i hlavička s redirectem, tu pak můžeš nastavit jako hlavičku své stránky, ale dost pravděpodobně to zařve, že tě to přesměrovává na zabezpečené spojení. Závisí na nastavení prohlížeče.
C:\>ver
MS-DOS Version 5.00
wojta
Pokročilý
Uživatelský avatar

Odeslat příspěvekod francesco3 6. 6. 2008 20:55

Já ale pořád nemůžu přijít na to jak to provést. Prakticky, v PHp.
francesco3
Junior
Uživatelský avatar

Odeslat příspěvekod wojta 6. 6. 2008 21:10

Co obsahuje ta hlavička odpovědi?
Kód: Vybrat vše
$header_size = curl_getinfo($curl_resource,CURLINFO_HEADER_SIZE);
$header = substr($response, 0, $header_size);
C:\>ver
MS-DOS Version 5.00
wojta
Pokročilý
Uživatelský avatar

Odeslat příspěvekod francesco3 6. 6. 2008 21:21

V hlavičce odpovědi je:

HTTP/1.1 200 OK
Date: Fri, 06 Jun 2008 20:19:04 GMT
Server: Apache
X-Powered-By: PHP/5.2.5
Set-Cookie: cetid=id48499bb814692; expires=Mon, 01-Jun-2009 20:19:04 GMT; path=/
Set-Cookie: PHPSESSID=a5ea1e98c6baf72a6939091a142a9248; path=/
Transfer-Encoding: chunked
Content-Type: text/html
francesco3
Junior
Uživatelský avatar

Odeslat příspěvekod wojta 6. 6. 2008 21:32

No jo, žádný redirect, už rovnou stránka. A proč ti vlastně vadí, že tam máš jinou URL?
C:\>ver
MS-DOS Version 5.00
wojta
Pokročilý
Uživatelský avatar

Odeslat příspěvekod francesco3 6. 6. 2008 21:46

No blbne tam například kódování (vynuceno serverem) a jde o provádění nějaké peněžní transakce, takže varianta, kdy je to dedfacto na tom prvním serveru by asi neprošla.
francesco3
Junior
Uživatelský avatar

Odeslat příspěvekod wojta 7. 6. 2008 05:42

Možná zkus tu stránku překódovat pomocí iconv.
C:\>ver
MS-DOS Version 5.00
wojta
Pokročilý
Uživatelský avatar

Odeslat příspěvekod francesco3 7. 6. 2008 11:40

Špatně jsem to napsal, hlavní problém je to, že jeden web je takto jakoby součástí druhýho webu, což v tomhle případě prostě nelze. A já myslel, jak to bude jednoduchý....
francesco3
Junior
Uživatelský avatar


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků