हमारी कंपनी ने AngularJS और इसके रूटिंग का उपयोग करते हुए एक सिंगल पेज एप्लिकेशन विकसित किया है । Google ने हमारी साइट को जावास्क्रिप्ट के साथ अनुक्रमित किया लेकिन यह कुछ पृष्ठों को बहुत अच्छी तरह से अनुक्रमित नहीं करता था इसलिए हमने केवल एक HTML संस्करण विकसित किया है।
हमने यहां पोस्ट किए गए अजाक्स क्रॉलिंग स्पेसिफिकेशन का अनुसरण किया है और एक <meta name='fragment' content='!'>
टैग और कैनोनिकल यूआरएल है। हम उम्मीद कर सकते http://www.example.com/foo/bar
हैं कि इससे प्राप्त किया जाएगा http://www.example.com/?_escaped_fragment_=/foo/bar
।
हालाँकि, हमें पता चला है कि जब हमने AJAX विनिर्देश को रोल किया था तो अब हमारे पास सभी पृष्ठ दो बार अनुक्रमित हैं, एक बार जावास्क्रिप्ट संस्करण के साथ http://www.example.com/foo/bar
और एक बार नए संस्करण के साथ http://www.example.com/#!/foo/bar
। यह हमारे लिए हानिकारक है क्योंकि यह डुप्लिकेट कंटेंट है और साइट का गलत प्रतिनिधित्व भी करता है।
मैंने यहाँ और Google उत्पाद फ़ोरम में इसी तरह के प्रश्नों की तलाश की है, लेकिन कुछ भी सामने नहीं आ सका।
rel="canonical"
?
#!
URL का उपयोग नहीं कर रहे हैं, तो आप सोच रहे हैं कि आप _escaped_fragment_
Google AJAX का उपयोग क्यों कर रहे हैं ?