2010-04-21 49 views
0

我得到一個客戶端,這是一個網站是SSL下的付款流程。但是他購買了共享SSL,因此實際的域名不同(儘管我認爲它是同一臺服務器)。關於會話變更和共享SSL的建議

因此,當一個用戶在例如登錄:www.mydomain.com/login.php並試圖買東西,他重定向到https://secure20.livessl.com/mydomaincom/payment.php

現在$ _SESSION瓦爾未設置,這樣我就可以」不要使用它作爲付款表格。

我不想通過GET METHOD或POST METHOD發送這些...任何想法? 我必須告訴客戶購買私人SSL嗎?

謝謝!

回答

1

最好,他們應該拿到證書。他們現在非常實惠,它使他們的業務看起來無限更專業。

如果他們要求這種第三方的方式,爲什麼你不想通過POST方法發送數據?它將被加密。

想到的另一個想法是發送一個帶有一個長標識符的get獲取,該標識符附加到查詢字符串(不使用會話ID),然後SSL服務器上的PHP腳本可以使用該標識符發送安全請求(CURL)返回到請求會話變量的始發服務器。但是當POST發佈時,這看起來有點矯枉過正。

+0

嗯,我剛剛嘗試POST變量,但它沒有得到目標頁面。我在這裏錯過了什麼? 我不知道 - 我可以將變量從一個域發佈到另一個域嗎? – 2010-04-21 15:56:31

+0

確定找到了解決方案:您沒錯 - 最好通過POST發送。我不知道它會被加密。無論如何,我只發送用戶ID,所以它並不重要。謝謝 – 2010-04-21 15:59:19

+0

很高興我能幫到你。 – webbiedave 2010-04-21 19:29:34

0

您無法在重定向中傳遞帖子 - 僅GET GET vars。此外cookies不跨域工作 - 但是,有什麼可通過會話ID作爲GET變量,然後創建上引用同一個會話的第二虛擬主機新cookie阻止你:

if ($_GET['sessid_from_remote']) { 
    session_id($_GET['sessid_from_remote']); 
} 
session_start(); 

但這只是如果兩個虛擬主機共享一個會話存儲基板,就可以開始工作。

就我個人而言,我不會將我的信用卡信息輸入到任何我認識並信任的網站(亞馬遜,貝寶,worldpay等)中,而這些人不會使用共享主機帳戶。所以我建議使用paypal或worldpay來完成安全部分,而不用擔心專用的SSL證書。

C.