全部產品
Search
文件中心

Performance Testing Service:PTS的壓測流量因安全性原則無法直接存取Web應用,怎麼辦?

更新時間:Nov 01, 2025

問題現象

因被壓測應用出於安全原因而不對公網暴露服務,或者使用了阿里雲雲產品Web Application Firewall(Web Application Firewall,簡稱WAF),因此可能會因為壓測流量較大而觸發一些攔截、阻斷和清洗,導致PTS的壓測流量被Web Application Firewall攔截。

解決方案

方案一:WAF設定Header白名單

如果被壓測的應用使用了WAF,您可以根據Header在WAF中配置網站白名單規則,允許存取所有PTS的壓測請求,具體操作如下:

  1. 登入Web Application Firewall3.0控制台。在頂部功能表列,選擇WAF執行個體的資源群組和地區(中国内地非中国内地

  2. 在左側導覽列選擇防護配置 > Web 核心防護

  3. 單擊白名單左側的image.png表徵圖,然後單擊操作列的建立規則。然後在彈出的對話方塊中建立網站白名單規則,並設定匹配條件為Header x-pts-test存在。

說明

PTS發送的HTTP請求中,會帶有x-pts-test的Header,因此您需要建立一個網站白名單規則並將其匹配條件設定為Header x-pts-test存在。有關網站白名單設定的更多資訊,請參見設定網站白名單

方案二:擷取施壓機IP並設定IP白名單

您也可以在安全性原則中對施壓機開放IP白名單,請注意,壓測IP不固定,此方案需要每次壓測時,重新設定IP白名單,建議使用上文的方案一。擷取施壓機IP的具體操作如下:

直接開啟壓測,在壓測啟動後擷取施壓機IP。若您已有建立好的壓測情境,您可以在控制台的左側導覽列選擇效能測試 > 情境列表,然後在情境列表頁面,單擊目標壓測情境操作列的啟動,啟動壓測。

開始壓測後,在壓測中頁面,您可直接查看到施壓機IP。image

使用共用資源池無法在啟動壓測之前擷取施壓機IP,如需在施壓機施壓之前能夠完成設定白名單,您可以在壓測情境中添加起始等待時間,等待時間根據設定白名單所需時間來指定,在延時釋放期間仍會消耗VUM。PTS壓測和JMeter壓測中設定起始等待時間的具體操作如下:

  • PTS壓測中設定起始等待時間

    在每一個業務會話中添加一個延時釋放的指令,延時的時間根據設定白名單所需時間來指定。添加延時釋放指令的具體操作,請參見延遲釋放指令

  • JMeter壓測中設定起始等待時間

    1. 在JMeter測試計劃中,右鍵選擇Test Plan > Add > Threads(Users) > setUp Thread Group,添加setUp線程組。rj

    2. setUp Thread Group頁面勾選Specify Thread lifetime,設定setUp線程組的起始延時時間為預計等待時間即可,如下圖所示。ro