Google CDN फ़ाइलों को क्रॉल नहीं करता है


11

मैंने देखा है कि Google वेबमास्टर टूल मेरी वेबसाइट में बहुत सारे अवरुद्ध संसाधनों की रिपोर्ट कर रहा है। अभी सभी "अवरुद्ध संसाधन" .css, .js और चित्र (.jpg, .png) हैं जो मैं Cloudfront CDN से सेवा करता हूँ।

मैंने बहुत समय परीक्षण किया है और यह पता लगाने की कोशिश की है कि Google इन फ़ाइलों को क्रॉल क्यों नहीं करता है और "संसाधन ब्लॉक" स्थिति की रिपोर्ट करता है।

वर्तमान में मैं कई होस्टनामों से इन फ़ाइलों की सेवा करता हूं जैसे: cdn1.example.com, cdn2.example.com,…

cdn1, cdn2 और अन्य CNAME के ​​क्लाउडफ्रंट वितरण नाम के हैं।

परीक्षण: मैंने सीधे क्लाउडफ्रंट वितरण (कोई CNAME) का उपयोग करने की कोशिश की है, लेकिन समस्या बनी हुई है।

वर्तमान में मेरे robots.txt इस तरह दिखते हैं:

# Google AdSense
User-agent: Mediapartners-Google
Disallow:

#Google images
User-agent: Googlebot-Image
Disallow: /

User-agent: *
Disallow: /homepage
Disallow: /index.php*
Disallow: /uncategorized*
Disallow: /tag/*
Disallow: *feed
Disallow: */page/*
Disallow: *author*
Disallow: *archive*
Disallow: */category*
Disallow: *tag=*
Disallow: /test*
Allow: /

और एक उदाहरण पृष्ठ में अवरुद्ध फ़ाइलों के उदाहरण:

  • cdn1.example.com/wp-content/plugins/wp-forecast/wp-forecast-default.css

  • cdn9.example.com/wp-content/plugins/bwp-minify/min/?f=wp-content/themes/magazine/css/font-awesome.min.css,wp-content/themes/magazine/css/responsive .css

  • cdn5.example.com/wp-content/themes/magazine/images/nobg.png

  • cdn6.example.com/wp-content/plugins/floating-social-bar/images/fsb-sprite.png

  • cdn5.example.com/wp-content/uploads/2013/11/Design-Hotel-3-80x80.jpg

  • cdn5.example.com/wp-content/uploads/2013/11/Marta-Hotel-7-270x225.jpg

मैंने भी robots.txt में सब कुछ करने की अनुमति देने की कोशिश की है, लेकिन मेरे पास हमेशा एक ही परिणाम है।

मैं अमेज़ॅन में क्लाउडफ्रंट सेटिंग्स को भी ध्यान से देख रहा हूं और ऐसा कुछ भी नहीं देख सकता हूं जो संबंधित हो सकता है (मैं उपयोग नहीं करता हूं और कभी भी विकल्प का उपयोग नहीं किया है: "व्यूअर एक्सेस को प्रतिबंधित करें (साइन किए गए URL या हस्ताक्षरित कुकीज़ का उपयोग करें)"।

अभी मैंने इसे देखने में बहुत समय बिताया है और मेरे पास अधिक विचार नहीं हैं।

क्या कोई ऐसा कारण सोच सकता है कि अमेज़न क्लाउडफ़ॉरेस्ट में होस्ट की गई रेंगने वाली फ़ाइलों से Googlebot क्यों अवरुद्ध हो?


क्या आपने इन "अवरुद्ध संसाधनों" के HTTP प्रतिक्रिया हेडर की जांच की है? GWT क्या सटीक त्रुटि रिपोर्ट करता है? अगर वे robots.txt द्वारा ब्लॉक किए गए थे, तो इसे इसकी रिपोर्ट करनी चाहिए।
२३:४२ पर MrWhite

आपकी robots.txt फ़ाइल के बारे में मामूली टिप्पणी ... URL डिफ़ॉल्ट रूप से उपसर्ग से मेल खाते हैं, इसलिए *URL "उपसर्ग" के अंत में होने की कोई आवश्यकता नहीं है । /test*के रूप में ही है /test
MrWhite

नमस्ते, मैं हेडर की जांच नहीं कर सकता, क्योंकि मुझे नहीं पता कि googlebot को क्या मिल रहा है। मुझे बस यह संदेश मिला: "Googlebot को इस पृष्ठ के लिए सभी संसाधन नहीं मिल सके। यहां एक सूची है:" और फिर "कारण": "अवरुद्ध" के साथ सभी CDN होस्ट की गई फ़ाइलों (js, css और छवियों) की सूची।
टॉनलोट

जब से मैं "लाने और रेंडर" करने के लिए कह रहा हूं, मैं यह भी देखता हूं कि रेंडरिंग में शैलियों और छवियों का अभाव है ....
टॉनेलोट

इसके अलावा, robots.txt सिंटैक्स पर नोट के लिए धन्यवाद।
टनलोट

जवाबों:


7

इसलिए, समाधान यह प्रतीत होता है कि अमेज़ॅन क्लाउडफ्रंट भी मेरा मूल्यांकन robots.txtकरता है और किसी तरह Google से विभिन्न सिंटैक्स नियमों का उपयोग करता है।

मेरे काम का संस्करण robots.txtनिम्नलिखित है:

User-agent: Googlebot-Image
Disallow: /
User-agent: *
Disallow: /homepage
Disallow: /uncategorized
Disallow: /page
Disallow: /category
Disallow: /author
Disallow: /feed
Disallow: /tags
Disallow: /test

यह कहने के लिए एक बहुत ही महत्वपूर्ण नोट कि यह पहले की तरह ही सटीक कार्य नहीं कर रहा है। वास्तव में, मैंने सभी रिक्त लाइनों, वाइल्डकार्ड और "अनुमति" निर्देशों को लिया। मतलब कि अंतिम परिणाम समान नहीं है ... लेकिन मुझे लगता है कि मेरे लिए काफी करीब है। उदाहरण के लिए यह क्वेरी स्ट्रिंग में पारित होने पर टैग पृष्ठों को बाहर नहीं करता है ...

तीन महत्वपूर्ण नोट:

  1. यदि आप इसके साथ परीक्षण कर रहे हैं, तो robots.txtप्रत्येक पुनरावृत्ति के लिए क्लाउडफ़्रंट वितरण में अमान्य करना न भूलें । बस जाँच की जा रही है कि आपको अंतिम संस्करण दिया जा रहा है।

  2. मुझे robot.txtअमेजन क्लाउडफ्रंट द्वारा समझे गए वाक्यविन्यास की परिभाषा कहीं भी नहीं मिली। तो, यह परीक्षण और त्रुटि थी।

  3. परिणामों का परीक्षण करने के लिए Google वेबमास्टर और उनके मोबाइल फ्रेंडली परीक्षक ( https://www.google.com/webmasters/tools/mobile-friendly/ ) के "भ्रूण और रेंडर" टूल का उपयोग करें

मुझे समझ नहीं आ रहा है कि क्लाउडफ्रंट क्यों मान्य और मेरा मूल्यांकन कर रहा है robots.txt। यह फ़ाइल मेरे और मेरे साइट पर आने वाले क्रॉलर के साथ एक "डील" है। बीच में अमेज़न का कोई कारोबार नहीं है। मेरे साथ खिलवाड़ robots.txtसिर्फ सादा बेवकूफी है।

यह मेरे दिमाग में कभी नहीं आया कि क्लाउडफ्रंट मेरे robots.txtसिंटैक्स का अनुमान लगा सकता है ।


2

एक बाल्टी में एक robots.txt बनाएँ।

अपने क्लाउडफ्रंट वितरण के लिए एक और मूल बनाएँ।

अपनी वेबसाइट पर अपनी बाल्टी की प्राथमिकता अधिक सेट करें।

Cloudfront पर अपनी साइट के robots.txt को अमान्य करें।

उपरोक्त कार्य करने के बाद, Google आपकी साइट को क्रॉल करते समय robots.txt साइटों को पढ़ेगा और आपके cdn से लिंक का अनुसरण करते समय विभिन्न robots.txt देखने को मिलेगा।


1

Google मुख्य साइट के रूट में robots.txt का उपयोग करके बाहरी संसाधनों को अनुक्रमित होने से नहीं रोकता है। उप डोमेन का उपयोग करते हुए, सीडीएन या अन्य को बाहरी डोमेन के रूप में वर्गीकृत किया जाता है सामग्री को ब्लॉक करने का एकमात्र तरीका सीडीएन द्वारा दी गई फ़ाइल पर हेडर प्रतिक्रिया का उपयोग कर रहा है, या सीडीएन या उप डोमेन पर robots.txt का उपयोग करके। ।

का उपयोग करते हुए:

#Google images
User-agent: Googlebot-Image
Disallow: /

केवल उन छवियों को ब्लॉक करना चाहिए जो स्थानीय हैं, आपको सीडीएन पर भी ऐसा करने की आवश्यकता होगी।

मौके इसकी हेडर प्रतिक्रिया समस्या हैं और आपको CDN की किसी एक फाइल पर 'CURL' करना चाहिए। यह कुछ इस तरह दिखना चाहिए:

HTTP/1.0 200 OK
Cache-Control: max-age=86400, public
Date: Thu, 10 May 2012 07:43:51 GMT
ETag: b784a8d162cd0b45fcb6d8933e8640b457392b46
Last-Modified: Tue, 08 May 2012 16:46:33 GMT
X-Powered-By: Express
Age: 7
Content-Length: 0
X-Cache: Hit from cloudfront
X-Amz-Cf-Id: V_da8LHRj269JyqkEO143FLpm8kS7xRh4Wa5acB6xa0Qz3rW3P7-Uw==,iFg6qa2KnhUTQ_xRjuhgUIhj8ubAiBrCs6TXJ_L66YJR583xXWAy-Q==
Via: 1.0 d2625240b33e8b85b3cbea9bb40abb10.cloudfront.net (CloudFront)
Connection: close

देखने के लिए चीजें हैं:

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
X-Robots-Tag: googlebot: noindex

नमस्कार, आपके जवाब के लिए धन्यवाद। लेकिन मेरी समस्या यह नहीं है कि छवियों को अनुक्रमित होने से कैसे रोका जाए। भ्रम से बचने के लिए मैंने robots.txt से बाहर लिया और परिणाम समान हैं। Googlebot शिकायत करता है कि यह उन फ़ाइलों पर अवरुद्ध है जिन्हें मैं क्लाउडफ्रंट पर होस्ट करता हूं और मुझे नहीं पता कि क्यों। कोई और विचार? योरू ध्यान के लिए धन्यवाद, मिगुएल
टोनेलॉट

आप समझ गए, मुझे पता है कि आप इसे अवरुद्ध नहीं करना चाहते हैं ... इसलिए मैंने यह सुनिश्चित करने के लिए नीचे कहा कि आपका हेडर प्रतिक्रिया एक्स-रोबोट-टैग नहीं कर रहा है, आप check the robots.txt on your CloudFront distributionयह भी कहें कि मैंने यह भी कहा है! सीडीएन पर अनुक्रमित की जा रही छवियों को ब्लॉक करने का एकमात्र तरीका एक्स-रोबोट-टैग और सीडीएन पर एक रोबोट है।
साइमन हैटर

1

समस्या का पता चला: CloudFront robots.txt को पढ़ता है और सामग्री को परोसने से रोकता है, लेकिन यह कुछ को बताता है कि रोबोट को किस तरह से अलग होना चाहिए, मुझे लगता है।

उदाहरण के लिए, robots.txt पर निम्न सामग्री:

Disallow: */wp-contents/ Allow: */wp-contents/themes/

जब Googlebot इसे स्वयं प्राप्त करता है, तो यह इसे अनुक्रमित करता है; जब CloudFront इसे पढ़ता है, तो यह 'Allow' निर्देश पर विचार नहीं करता है, और अंदर कुछ भी परोसने के लिए मना करता है */wp-contents/themes/

संक्षिप्त उत्तर: अपने CloudFront वितरण पर robots.txt की जाँच करें, यह समस्या हो सकती है। अमान्य करें और इसे सही संस्करण के साथ अपडेट करें और इसे काम करना चाहिए!


क्लाउडफ़्रंट न तो अपनी सामग्री पर "रोबोट्स" को पढ़ता है, न ही किसी भी "विचार" पर और न ही किसी भी चीज़ की "रोकथाम" करता है। याद रखें कि जब आप किसी वस्तु को प्राप्त करते हैं, तो आपको क्लाउडफ्रंट से क्या मिलता है, आपको यह बताता है कि किसी अन्य किनारे के स्थान से किसी ने क्या प्राप्त किया है, यदि उनकी बढ़त आपके द्वारा किए गए पहले की तुलना में पहले या बाद में कैश की गई हो। इसके अलावा, अग्रणी वाइल्डकार्ड संभवतः अप्रत्याशित व्यवहार के लिए एक नुस्खा हैं, क्योंकि रोबोट बहिष्करण "मानक" अच्छी तरह से मानकीकृत नहीं है।
माइकल - sqlbot

"CloudFront robots.txt पढ़ता है" - क्या CloudFront पर यह एक robots.txt फ़ाइल होस्ट की गई है? "अग्रणी वाइल्डकार्ड" भी अनावश्यक प्रतीत होगा, यदि यूआरएल प्रश्न में कहा गया कुछ भी हो।
Mrhhite

नमस्ते। निश्चित रूप से क्लाउडफ्रंट मेरे robots.txt को पढ़ रहा है। और निश्चित रूप से Google के समान सिंटैक्स को स्वीकार नहीं कर रहा है। मैंने पहले से ही robots.txt निकालकर परीक्षण कर लिया था और देखा कि कोई परिणाम नहीं है क्योंकि मैंने क्लाउडफ्रंट में अनुरोध और अमान्य नहीं किया था। माना कि यह आवश्यक नहीं था क्योंकि मुझे नवीनतम संस्करण परोसा जा रहा था। परीक्षण में बहुत समय लगता है क्योंकि प्रत्येक परिवर्तन को अमान्य अनुरोध की आवश्यकता होती है जो हमेशा के लिए पूरा हो जाता है। मैं कुछ घंटों में काम करने वाले संस्करण के साथ वापस आ जाऊंगा। मुझे नहीं पता कि इस तरह की "स्मार्टनेस" की आवश्यकता क्यों है..लेकिन यह वहां है और मुझे लगता है कि यह नहीं होना चाहिए। मिगुएल
टोनेलॉट

मेरे Apache पर मौजूद वही robots.txt है जो एक क्लाउडफ्रंट को मिला है। मैंने इसे अनुभवजन्य रूप से निर्धारित किया।
स्नैग्नर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.