2013-08-28 18 views
8

CURL kullanarak yüklemek istediğim bir sitem var. Ancak, bahsettiğim site cloudflare korumasını kullanıyor. CURL talebinde iken => 'tarayıcınızı kontrol ediyorsunuz, 5 saniye içinde yönlendirileceksiniz' ve bir koruma testinden geçmediğimi düşündüğümden beri var olmayan sayfaya yönlendiriyorum.cURL - CloudFlare korumalı bir site yükleyin

Ben uzun benim cevap arıyordum ve ben sadece iki yararlı bağlantılar bulundu:

Link 1

Link 2

Ama yine de onu anlamaya olamaz. Benim için herhangi bir yardım?

+2

Url'yi programlayarak okumalısınız. – developerwjk

+0

belki de site site yoluna erişmenizi istemiyorsa, yapmamalısınız? –

+0

Olası kopyası [curl: CloudFlare nedeniyle web sitesinden rss alamıyor] (http://stackoverflow.com/questions/11886711/curl-cant-fetch-rss-from-website-because-of-cloudflare) – andree

cevap

12

Ben Saldırı Modu Altında olduğum CloudFlare en olacaktı O ->http://blog.cloudflare.com/introducing-im-under-attack-mode

sitenin sahibi iseniz kendi IP adresini beyaz listeye gerekir. site ya

1.) bir ziyaretçi iseniz web sitesi sahibinin kendi web sitesinde etkin özelliğe sahiptir ki bu durumda kasıtlı ve onlar kendi web sitesi veya

koruyor olarak o etrafında bir yolu yoktur içinde

2.) Siteyi çok sık yüklüyorsunuz - ve CloudFlare'nın DDOS korumasını tetikliyorsunuz.

p.s. Yasal Uyarı: CloudFlare için çalışıyorum.

+0

Merhaba, CloudFlare için çalışırken, "İçerik Korumanızı" aşmanın bir yolu olduğunu söylemek istiyorum: 1. Sayfayı Curl ile yükle, 2. Selenyum'a aktar, Tarayıcıyı Chrome'a ​​ayarla. 3. Önceki çerezlerle sayfayı yükleyin, 5 saniye bekleyin ve içeriğini yazdırın. KOLAY :) –

12

Herhangi bir büyük tarayıcının geliştirici araçları altındaki olarak kopyala seçeneğini seçerek atak-altında saldırı kipinde gezinebilirsiniz.

Bu, gerekli tüm çerezleri kopyalar, böylece kıvrımınız 'kimlik doğrulaması' olabilir. Bu kurabiyelerden ne kadar süre beklediğim bulut bulutları kadar uzardı.

SideNote: Kıvrım, siteyi yüklediğiniz IP ile aynı anda çalıştırılmalıdır. Ayrıca herhangi bir gerçek test/geliştirme ortamı için web sitesi testi için daha iyi ve kolay betik dilleri olan selenium ve/veya phantomjs önerebilirim.

curl 'https://ilikeurls.net/ourpage.php?do=command' \ 
    -H 'Host: ilikeurls.net' \ 
    -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:33.0) Gecko/20100101 Firefox/33.0' \ 
    -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' \ 
    -H 'Accept-Language: en-US,en;q=0.5' \ 
    -H 'Accept-Encoding: gzip, deflate' \ #remove this line for readable/greppable formatting 
    -H 'Referer: https://ilikeurls.net/outpage.php' \              
    -H 'Cookie: all required cookies will appear here' \ 
    -H 'Connection: keep-alive' 

komut dosyası dışarı bu testleri için selenyum ya phantomjs kullanarak daha iyi olabilir ama.

+2

aslında yapmayın '-H 'Kabul-Kodlama: gzip, deflate'' - do' - sıkıştırılmış' - bu, curl ile derlenmiş tüm sıkıştırma şemaları ile aynı üstbilgiyi gönderir - genellikle "gzip, deflate" ye kaynayan - ve kıvırmak sizin için otomatik olarak sıkıştırır, okunabilirliği ve tekrarlanabilirliği korur ve sıkıştırma tarafından sağlanan hız iyileştirmelerini korur :) – hanshenrik