nasıl aslında aynı web sitesi veya web başvuruyorsunuz söylemek için 2 URL'ler, verilen?

7 Cevap php

PHP kullanıyorum.

Bunun gibi 2 adresler verilmiş, http://soccernet.com ve http://soccernet.espn.go.com/index?cc=4716

nasıl aslında aynı olduğunu anlatmak için?

Fark https://gmail.com ve http://gmail.com gibi https, nerede olduğunu da durum dikkate

lütfen bildiriniz. Bazen örneğin, soccernet örneğin ayırt için çok iyi değil çünkü ben bunu regex kullanarak bir mücadele bulma yaşıyorum.

i olası iyi fikirlerin her türlü açığım ve kendimi sadece regex için sınırlayıcı değildir.

Düzenleme: Aşağıdaki tüm yorumlar ve cevaplar için teşekkürler. nasıl kesinlik düzeyi elde etmek için iyi bir fikir? i hangi faktörlerin bakmak gerekir? nasıl ben en verimli şekilde bu konuda gitmek mi?

7 Cevap

Ben gerçekten bu aslında her sayfasından almak çıkışını karşılaştırarak olmadan, soccernet örnek verilen, mümkün olduğunu sanmıyorum.

Tek yolu, her sayfayı indirmek ve onları karşılaştırmaktır.

Ortalama HTML dosyası oldukça küçük (normalde iyi 100KB en en altında) olduğundan, gerçekten, bu, çok fazla sorun olmamalı. Tüm başvurulan dosyaları indirmek gerekmez.

Sen genel durumda, bu belirleyemiyor. http://server1/page.aspx ve server1 ve Sunucu2 aynı IP adresine eşlemek, hem eğer http://server2/page.aspx, aynı sayfa olabilir; Aslında, her ikisi de aynı sunucu çiftliği eşlerseniz.

Onlar aynı sayfa olsa bile sayfa farklı onu istemek için kullanılan URL tabanlı işler Aslında, onlar tamamen farklı içeriklere sahip olabilir.

tam olarak ne istediğinizi vermez ancak, muhtemelen, bir HEAD isteği vermeden sonra dosya boyutu karşılaştırabilirsiniz, onlar aynı olduğu kesinlik düzeyi olabilir.

HEAD isteği yapıyor sonra filesizes aynı olup olmadığını içeriğini karşılaştırmak için alabilir.

Burada bir HEAD isteği yapıyor bazı bilgi:

http://www.eggheadcafe.com/tutorials/aspnet/2c13cafc-be1c-4dd8-9129-f82f59991517/the-lowly-http-head-reque.aspx

soccernet.com ve soccernet.espn.go.com tamamen farklı URL'ler. Onun çok özel bir durum program soccernet.espn.go.com yönlendirir fark HTTP erişimi için soccernet.com gerekir. Bu durum için uygulanabilir mi?

Sen sayfa başka bir yere yönlendirilir olup olmadığını belirlemek için bir HTTP HEAD isteği yapabilirsiniz. Sen could gerçek cevap dosyayı karşılaştırın, ama ESPN gibi bir web sitesi ile, hatta aynı url nadiren nedeniyle javascript ve reklamları izlemeye, aynı içeriği ile cevap verecektir.

Get_headers () işlevini kullanın ve özyinelemeli 'Yer' tuşuna izleyin. Yani 'soccernet.com' http://soccernet.espn.go.com/index 'yönlendirir hangi' http://soccernet.espn.go.com/archive/ 'yönlendirir. Sorgu dizesi, bu url ve diğer url almamak size eşdeğerdir var.

print_r(get_headers('http://soccernet.espn.go.com/archive/'),1)

Belki cURL senin arkadaşın. Bu yönlendirmeleri takip edebilirsiniz like this.