我已使用cURL解決方案來解決XSS,但存在問題。 我proxy.php文件的內容是: -未執行PHP腳本
<?php
$url = "http://www.yahoo.com";
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
echo $file_contents;
?>
而且我這是如何試圖執行PHP腳本
$("#tempButton").click(function(){
$("#pageContent").load('http://localhost:8080/proof/proxy.php',function() {
var t = $("#pageContent").html();
alert(t);
});
});
但變量t顯示proxy.php文件的內容,但它是預計將顯示在proxy.php文件中設置的yahoo.com的內容。我在做些愚蠢的事情嗎? #FirstTimePHP
將http:// localhost:8080 /從http:// localhost:8080/proof/proxy.php中刪除,它應該只是'/proof/proxy.php'。此外,檢查螢火蟲和/或鉻檢查器的錯誤細節。 – jpic 2012-04-02 11:01:03
嘗試直接訪問您的頁面(只需瀏覽到proxy.php),或使用Firebug的Net標籤(或任何等效工具)檢查請求的輸出 – TJHeuvel 2012-04-02 11:01:06
您可能沒有在您的Web服務器中註冊PHP。如果是這樣,當從網絡訪問它時,你永遠不應該看到''標籤內的php文件的_content_。 – 2012-04-02 11:01:07