الوثائق

إرسال عنوان URL واحد


لإرسال عنوان URL باستخدام طلب HTTP (استبدال ليحل محله عنوان URL الذي يوفره محرك البحث)، قم بإصدار طلبك إلى عنوان URL التالي:

                https://<searchengine>/indexnow?url=url-changed&key=your-key
            
  • url-changed هو عنوان URL لموقع الويب الخاص بك والذي تم إضافته أو تحديثه أو حذفه. يجب أن يكون عنوان URL عبارة عن URL تم تخطيه وتشفيره ويرجى التأكد من أن عناوين URL الخاصة بك تتبع معيار RFC-3986 لعناوين URL.
  • your-key يجب أن يشتمل على 8 أحرف كحد أدنى و128 حرفًا سداسيًا عشريًا كحد أقصى. يمكن أن يحتوي المفتاح على الأحرف التالية فقط: الأحرف الصغيرة (a-z) والأحرف الكبيرة (A-Z) والأرقام (0-9) والشرطات (-).

على سبيل المثال، إذا كنت تريد إخطار محركات البحث بتحديث https://www.example.com/product.html، وتريد استخدام هذا المفتاح ، فسيكون عنوان URL الخاص بك:

                https://<searchengine>/indexnow?url=https://www.example.com/product.html&key=
            

يمكنك إصدار طلب HTTP باستخدام المتصفح لديك أو wget أو curl أو أي آلية أخرى من اختيارك. سيرجع الطلب الناجح برمز رد HTTP 200؛ فإذا تلقيت ردًا مختلفًا، فتأكد من أنك لا تقوم بالإرسال أكثر مما ينبغي، وأن المفتاح وعنوان URL صالحان ثم أعِد إرسال الطلب. يشير رمز الرد HTTP 200 فقط إلى أن محرك البحث قد تلقى عنوان URL الخاص بك.

إرسال مجموعة عناوين URL


لإرسال مجموعة عناوين URL باستخدام طلب HTTP، قم بإصدار طلب POST JSON الخاص بك إلى عنوان URL الذي تقدمه محركات البحث. استبدل ليحل محله اسم مضيف محرك البحث.

                POST /indexnow HTTP/1.1
                Content-Type: application/json; charset=utf-8
                Host: <searchengine>
                {
                  "host": "www.example.com",
                  "key": "",
                  "urlList": [
                      "https://www.example.com/url1",
                      "https://www.example.com/folder/url2",
                      "https://www.example.com/url3"
                      ]
                }
            

يمكنك إرسال ما يصل إلى 10000 عنوان URL لكل منشور، من خلال دمج عناوين URL من النوعين http وhttps عند الحاجة.

يمكنك إصدار طلب HTTP باستخدام wget أو curl أو أي آلية أخرى من اختيارك. سيرجع الطلب الناجح برمز رد HTTP 200؛ فإذا تلقيتَ ردًا مختلفًا، فيجب عليك التحقق من صحة طلبك وإذا كان كل شيء على ما يرام، فأعِد إرسال طلبك. يشير رمز الرد HTTP 200 فقط إلى أن محرك البحث قد تلقى مجموعة عناوين URL الخاصة بك.

الطريقة المُوصى بها هي أتمتة إرسال عناوين URL بمجرد إضافة المحتوى أو تحديثه أو حذفه إلى حد معين؛ اطّلع على أفضل الممارسات للمحتوى الذي أنشأه المستخدم في "الأسئلة المتداولة".

التحقق من الملكية عبر المفتاح


لإرسال عناوين URL، يجب عليك "إثبات" ملكية المُضيف الذي يتم إرسال عناوين URL إليه من خلال استضافة ملف نصي واحد على الأقل داخل المُضيف. بمجرد إرسالك لعناوين URL الخاصة بك إلى محركات البحث، ستقوم محركات البحث بتتبع ارتباطات ملف المفتاح للتحقق من الملكية واستخدام المفتاح إلى أن تقوم بتغيير المفتاح. يجب أن تكون أنت ومحركات البحث فقط على علم بالمفتاح وموقع مفتاح الملف لديك.

نحن نقدم طريقتين للتحقق من الملكية.

الخيار رقم 1
استضافة ملف مفتاح نصي في دليل جذر المضيف الخاص بك

يجب عليك استضافة ملف مفتاح نصي UTF-8 مُشفر ‎{your-key}.txt يسرد المفتاح في الملف في دليل جذر موقع الويب الخاص بك.

على سبيل المثال، بالنسبة إلى الأمثلة السابقة، سيتعين عليك استضافة ملف مفتاح UTF-8 الخاص بك على https://www.example.com/‎‎.txt ويجب أن يحتوي هذا الملف على المفتاح

الخيار رقم 2
استضافة ملف مفتاح نصي داخل المضيف الخاص بك.

يمكنك أيضًا استضافة من ملف واحد إلى العديد من ملفات مفتاح نص UTF-8 المُشفرة في مواقع أخرى داخل المضيف نفسه ويجب عليك إخبار محركات البحث بموقع ملف المفتاح النصي هذا في كل إشعار IndexNow من خلال تحديد الموقع عن طريق استخدام متغير keyLocation.

إذا أرسلتَ عنوان URL، فعليك تحديد موقع ملف المفتاح كقيمة مُعلمة لعناوين URL الخاصة بـ keyLocation.

                    https://<searchengine>/indexnow?url=http://www.example.com/product.html&key=&keyLocation=http://www.example.com/myIndexNowKey63638.txt
                

إذا أرسلتَ مجموعة عناوين URL، فعليك تحديد موقع ملف المفتاح كمتغير keyLocation في محتوى JSON.

                    POST /indexnow HTTP/1.1
                    Content-Type: application/json; charset=utf-8
                    Host: <searchengine>
                    {
                      "host": "www.example.com",
                      "key": "",
                      "keyLocation": "https://www.example.com/myIndexNowKey63638.txt",
                      "urlList": [
                          "https://www.example.com/url1",
                          "https://www.example.com/folder/url2",
                          "https://www.example.com/url3"
                          ]
                    }
                

في هذا الخيار رقم 2، يحدد موقع ملف المفتاح مجموعة عناوين URL التي يمكن تضمينها مع هذا المفتاح. فملف المفتاح الموجود في http://example.com/catalog/key12457EDd.txt يمكن أن يتضمن أي عناوين URL تبدأ بـ http://example.com/catalog/‎ لكن لا يمكن أن يتضمن عناوين URL التي تبدأ بـ http://example.com/help/‎.

تشمل عناوين URL التي لا تعتبر صالحة في http://example.com/catalog/sitemap.xml ما يلي:

عناوين URL التي لا تعتبر صالحة في الخيار رقم 2 قد لا يتم أخذها في الاعتبار للفهرسة. يُنصح بشدة باستخدام الخيار رقم 1 ووضع مفتاح الملف الخاص بك في دليل جذر خادم الويب الخاص بك.

Response format


HTTP Code
Response
Reasons
200
OK
URL submitted successfully
202
Accepted
URL received. IndexNow key validation pending.
400
Bad request
Invalid format
403
Forbidden
In case of key not valid (e.g. key not found, file found but key not in the file)
422
Unprocessable Entity
In case of URLs which don’t belong to the host or the key is not matching the schema in the protocol
429
Too Many Requests
Too Many Requests (potential Spam)

Requirement for search engines


Search engines adopting the IndexNow protocol agree that submitted URLs will be automatically shared with all other participating search engines. To participate, search engines must have a noticeable presence in at least one market or be closely linked to the search market and make a significant contribution to the number of url submissions. Learn more