Sayfa içinde sayfa yük

2 Cevap php

PHP ve JavaScript bir acemi değilim ..

I http://cmichaelis.whsites.net/whblog/jquery-extjs-1/example2 bir bağlantı bulundu

Içeride bir kod deyiş vardır:

function addPanel(location)
{
 tabpanel.add({
       autoLoad: {url: location},
       title: 'More Information...',
       closable:true,
       autoScroll:true
 }).show();
}

nasıl kullanılır:

<a href="javascript:void(0);"
   onclick="addPanel('loadpage.php?a=http://www.google.com')">
   head over to Google
</a>

Ben sormak istiyorum .. Ne loadpage.php için kod olarak ne olduğunu?

2 Cevap

Diğer cevap önerildiği gibi PHP sayfası google.com içeriğini dışarı yankı yok. Google'ı işaret bir iframe çıktılar:

<iframe src="http://www.google.com" width="100%" height="100%" frameborder="no"></iframe>

Bu loadpage.php file_get_contents kullanılarak, www.google.com içeriğini dışarı yankı kullanımda olabilir gibi görünüyor.

loadpage.php:

<?php
    // Simplified output - should sanitise $_REQUEST params etc first..
    echo file_get_contents($_REQUEST['a']);
?>

loadpage etkili javascript kendi etki alanında olmayan sayfaları aramak için izin, bir vekil olarak hareket edilir.

@ Annakata açıklamalarda belirttiği gibi, yukarıdaki kodu olarak-Obscenely tehlikelidir. Kod bir proxy dosya arkasındaki temel fikir bir resmidir - üretimde, bu dosya ve emin örneğin, $_REQUEST parametreleri hijyenleştirildi emin olmak gerekir Sadece beyaz listeden değerleri kabul edin.

same origin policy javascript kullanarak sayfa üzerinde etki alanınızın dışında içerik çekme sizi durdurur javascript bir güvenlik unsurudur.

Bazı siteler etkin bir hedef url içeriği yazdırır (loadpage bu durumda) kendi sunucusu üzerinde bir vekil sayfayı arayarak bu çevrede olsun. Bu vekil sayfa sunucu üzerinde olduğu gibi, bu aynı kökenli güvenlik sorunu by-pass, ve yine başka bir etki alanındaki bir sayfanın mevcut içerik yapar - burada www.google.com


Oops, I somewhat foolishly didn't RTFA, but just the code in the question and hypothesised at what it could be doing. @andynormancx is right in his answer as to what the page linked in the q is actually doing.