簡體   English   中英

在Magento上使用X-Forwarded-For標頭

[英]Use X-Forwarded-For headers on Magento

所以這是交易:

我們正在嘗試將Google Page Speed設置為與Magento一起使用,並且我們擔心由於所有頁面都將由Google提供服務,因此我們不知道我用戶請求的客戶端IP地址。 我們擔心這會影響我們的用戶與網站進行交互的能力(登錄/注銷和簽出)以及我們使用分析的能力(Google Analytics(分析))。 這真的是一個問題/問題嗎?

我們進行了一些研究,發現需要在Apache或PHP中設置X-Forwarded-For標頭。 我們的房東說他們不能這樣做,因為:

通常,我們將使用mod_rpaf來完成您想要的操作(將轉發的IP轉換為真實的IP,然后再傳遞給您的代碼),但是mod_rpaf要求您向其提供轉發服務器列表。 Google不提供此功能,因此我們無法使用它。

因此,現在剩下的唯一選擇是使用Magento的PHP進行設置,我們如何做到這一點?

通過Magento管理員(系統>配置>網絡>會話驗證設置)時,我們注意到“驗證HTTP_X_FORWARDED_FOR”:將其更改為“是”會有所幫助嗎?

-謝謝。

Google頁面Speed將在發送給magento的請求中設置http_x_forwarded_for標頭,這意味着magento可以使用PHP進行接收,如下所示:

$real_customer_ip = $_SERVER['HTTP_X_FORWARDED_FOR'];

Magento 捕獲通過http_x_forwarded_for標頭傳遞的ip信息,而無需進行額外配置。

要對此進行測試,請使用Google Page Speed設置您網站的測試實例並下訂單。 如果您隨后檢查該訂單,則會看到該訂單同時具有“ remote_ip”和“ x_forwarded_for”的值。 這些值存儲在magento的MySQL數據庫的“ sales_flat_order”表中。

客戶的IP地址與magento的登錄/注銷/結帳功能無關,它使用存儲在http會話中的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM