تخطي إلى المحتوى
SEOBlogBotإنشاء حساب

دليل التشغيل

مراجعة الروابط بعد النشر باستخدام GitHub Actions أو cron عادي

المنشور جاهز والنظام لم يكتمل بعد. يضيف هذا الدليل مراجعة مجدولة تسجل بيانات الروابط لكل موقع وتنبه شخصًا فقط عند وجود مشكلة.

فريق أبحاث SEOBlogBot ·

مكتب ورشة عمل مع عجلة جدول، رموز رصيد، وجرس تنبيه بأسلوب low-poly

لماذا المراجعة بعد النشر أساسًا

البوابة ترى المسودة. المراجعة ترى ما يفعله الموقع الحي فعليًا. تقوم الإضافات بإعادة كتابة الروابط، ويُلصق المحررون تحويلات الأفلييت فوق الروابط النظيفة، وقد تؤدي هجرة CDN إلى تحويل مضيف واحد إلى آخر. لا يوجد أي من ذلك في مرحلة المسودة، وهذا هو السبب في أن تشغيل ما بعد النشر هو المكان الأول الذي يمكن أن يظهر فيه ذلك.

المراجعة المفيدة مملة بطبيعتها. تعمل حسب الجدول، تكتب سطرًا واحدًا وتبقى هادئة إلا عند حدوث استثناء. الهدوء هو الهدف. شهر من السجلات الهادئة يعني أن المهمة تعمل، وليس أنها خاملة.

لا يوجد API رسمي من جوجل لفحص الروابط الخلفية للاستخدام العام، ولهذا السبب تستخدم الفرق فهرس روابط من طرف ثالث. إنه زاحف خاص بنا. يظهر Search Console رؤية جوجل لروابطك الخاصة، وتكمل المراجعة ذلك بدلاً من استبداله.

أين تعمل المهمة

اكتب الزناد. تغطي ثلاث إعدادات معظم الفرق، وكل منها ينفذ نفس الاستدعاءات. السجل أهم من الزناد، لأن التاريخ وURL والرصيد المستخدم يجب أن يسجلا هناك في كل مرة.

GitHub Actions لمستودع

إذا كان الموقع يُبنى من مستودع، فإن سير العمل المجدول يضيف أقل قدر من الاحتكاك. تعيش المهمة بجوار الكود، وتجلس المفتاح في متجر الأسرار الخاص بالمستودع. ملف سير العمل أدناه هو الحد الأدنى الذي تحتاجه. احتفظ به في المستودع، ومراجعته مثل أي كود آخر، وثبت إصدارات الإجراءات التي تعتمد عليها.

خادم عادي مع cron

الفرق التي تحتفظ بالفعل بآلة لعمليات البناء الخاصة بها يمكنها جدولة نفس الأوامر هناك. يمكن لأداة مثل n8n تشغيلها من خلال خطوة Execute Command، أو يمكن لسطر crontab تشغيلها مباشرة. بأي حال، يجب أن تعمل المهمة كمستخدم يمكنه قراءة المفتاح ولا شيء آخر.

Webhook من نظام إدارة المحتوى الخاص بك

تطلق بعض إعدادات CMS webhook عندما يصبح المنشور جاهزًا، ويمكن لهذا الحدث بدء المراجعة. ثم تعمل المراجعة بمجرد أن يصبح المنشور عامًا. احتفظ بتشغيل مجدول أيضًا، لأن missed webhook واحد يترك منشورًا دون مراجعة.

دليل التشغيل، بالترتيب

01

التشغيل عند النشر ومرتين بعد 30 يومًا

تشغيل واحد بعد أن يصبح المنشور جاهزًا يتحقق من مضيفي الروابط الخارجية. تشغيل ثانٍ بعد شهر يقرأ refdomains لموقعك، لأن الفهرس يتم تحديثه تقريبًا شهريًا وقراءة سابقة لن تظهر أي شيء جديد.

02

استدعاء النظرة العامة المجانية أولاً

action=overview يعيد الأرقام الرئيسية للموقع بدون تكلفة. احفظها كصف أساس لهذا التشغيل، مع التاريخ بجانبها.

03

اسحب القوائم المدفوعة فقط عند التغيير

إذا اختلفت النظرة العامة عن الشهر الماضي، استدعِ refdomains (2 رصيد) وanchors (2 رصيد) وقارنها بالقوائم المخزنة.

04

اكتب سطرًا واحدًا في سجل

التاريخ، URL المنشور، الاستدعاءات المنفذة، رصيد _credits. ملف CSV عادي مُلتزم بمستودع خاص يكفي.

05

تنبيه على الاستثناءات فقط

HTTP 401، HTTP 402، نتيجة فارغة لموقع كان له صفوف الشهر الماضي، أو انخفاض في التقييم بنقطة 10 أو أكثر.

موازين نحاسية توازن نباتًا كبيرًا واحدًا ضد نباتين صغيرين متطابقين

أي المواقع يجب مراجعتها

ابدأ بالنطاق الذي يستضيف المنشور. ثم قم بتشغيل نفس المراجعة ضد نظيرين أو ثلاثة تريد إجراء مقارنة لهم. استخدم compare لذلك. يستغرق ما يصل إلى 20 نطاقًا مقابل 1 رصيد، لذا فإن فحص النظراء يكلف تقريبًا لا شيء.

تخطِ الذيل الطويل. كل موقع إضافي يضيف ضوضاء إلى سجل يجب على شخص قراءته. مقارنة لعشرين نطاقًا غير ذي صلة تخبرك قليلاً جدًا عن موقعك الخاص.

إبقاء المفتاح خارج السجلات

تقرأ المهمة المجددة مفتاحها في كل تشغيل، لذا لا تحتاج خطوة تسجيل دخول. الشيء الوحيد الذي يجب حمايته هو المفتاح نفسه. لديه ثلاث تسريبات واضحة: commit، بيئة مطبوعة، وURL يسجله الوكيل. أغلق كل واحد.

استخدم متجر الأسرار، وليس ملفًا في المستودع

الصق المفتاح في متجر أسرار مزود CI الخاص بك، أو في ملف بيئة يمكن فقط لمستخدم المهمة قراءته. لا تلتزم به أبدًا. خطوة تعكس بيئتها ستطبعها، لذا لا تكتب واحدة.

أرسل المفتاح في رأس

يظل رأس Bearer المفتاح خارج معظم سجلات الوصول، لأن URLs تُسجل والعناوين عادة لا. يعمل نموذج سلسلة الاستعلام أيضًا، لكنه يترك نسخة في كل وكيل يرى الطلب.

حد من من يمكنه قراءة المتجر

امنح صلاحية القراءة للأشخاص الذين يحافظون على المهمة والآخرين لا. راجع هذه القائمة عندما تنتقل المهمة.

مفتاح يمكن للعديد من الناس قراءته هو مفتاح سينتهي به المطاف ملصقًا في نافذة دردشة يومًا ما.

تحقق من الرد قبل كتابته

الرد الذي يصل ليس بعد ردًا يمكنك استخدامه. استخدم ترتيبًا واحدًا في كل مرة. اكتب فقط ما يمر، وسجل الباقي. الرفض هو دليل، والشخص التالي الذي يقوم بتصحيح المهمة سيرغب في رؤيته.

تحقق من الحالة و ok أولاً

اقرأ رمز حالة HTTP، ثم حقل ok في الجسم. 200 مع ok مضبوط على خطأ هو مكالمة فاشلة أيضًا، ويجب أن يقول السجل ذلك.

قم بتحليل JSON قبل أي كتابة

تأكد من أن الجسم هو JSON صالح قبل فك الضغط أو التحليل أو الإضافة. يمكن أن يحدث تنزيل مقطوع على مشغل غير مستقر. ملف معيب مكتوب في السجل يبدو جيدًا حتى يفتحه شخص ما.

عامل القائمة الفارغة كسؤال

نتيجة فارغة لموقع كان له صفوف الشهر الماضي هي سؤال، وليست حقيقة. تحقق من تهجئة النطاق، بما في ذلك www. الرائدة، قبل أن يحصل أي شخص على تنبيه.

ملف سير عمل للبدء منه

احفظ المفتاح كسر مستودع باسم SBB_KEY. تعبير cron يعمل في الأول من كل شهر في 06:00 UTC.

yaml
name: monthly-link-audit
on:
  schedule:
    - cron: '0 6 1 * *'
  workflow_dispatch: {}
jobs:
  audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Overview (free)
        run: |
          curl -fsS "https://seoblogbot.com/api.php?action=overview&q=example.com" > overview.json
      - name: Refdomains (2 credits)
        env:
          SBB_KEY: ${{ secrets.SBB_KEY }}
        run: |
          curl -fsS -H "Authorization: Bearer $SBB_KEY" \
            "https://seoblogbot.com/api.php?action=refdomains&q=example.com&per=500" > refdomains.json
      - name: Log credits
        run: jq -r '._credits' refdomains.json >> credits.log

ماذا يحدث خطأ وما يظهره السجل

عرضالسبب المحتملالحركة الأولى
HTTP 401سر مفقود أو تم تدويرهأعد إنشاء السر، قم بتشغيل workflow_dispatch
HTTP 402نفد الرصيدأضف رصيدًا من صفحة الحساب، أعد التشغيل
صفوف فارغة لموقع معروفتحديث الفهرر قيد التقدم أو خطأ إملائي في النطاقأعد المحاولة في يوم؛ تحقق من www.
تحرك التقييم بضع نقاطتحديث شهريلا تفعل شيئًا؛ انظر إلى الاتجاه
انخفض التقييم 10+روابط مفقودة أو تغيير كبير في التحديثاسحب refdomains وقم بالفرق
cron على خادم عادي

نفس الأوامر تعمل من سطر crontab. احتفظ بالمفتاح في ملف بيئة يمكن فقط لمستخدم المهمة قراءته، وسجل في ملف تقوم بتدويره.

ميزان حجري مع وزن ثقيل واحد وصحن فارغ في إضاءة باستيل

التكاليف وأين قراءتها

مراجعة شهرية لموقع واحد تكلف 4 رصيد عند سحب كلا القوائم، وهو $0.0004. استدعاء النظرة العامة مجاني. شهر بدون تغيير لذلك يكلف لا شيء بالإضافة إلى ذلك.

إذا كانت فريقك ينشر عشرة منشورات في اليوم عبر عدة مواقع، فإن المراجعة لا تزال مهمة شهرية واحدة لكل موقع، وليست مهمة واحدة لكل منشور. هذا يبقي العدد صغيرًا والسجل قابل للقراءة.

عند إضافة موقع ثانٍ، انسخ المهمة بدلاً من توسيعها. سير عمل واحد لكل نطاق يبقي السجل لكل موقع ويجعل الفشل سهل التتبع إلى صاحبه.

التكلفة الأكبر هي عادة دقائق مزود CI الخاص بك، وليس رصيدنا. يضع جدول التكلفة كلا السطرين جنبًا إلى جنب، حتى تتمكن من تحديد أي واحد يجب ضبطه أولاً.

اطلب من التشغيل الأول طباعة _credits. ثق بالرد فوق أي جدول. يغطي دليل البوابة فحص جانب المسودة الذي يأتي قبل هذا.

جدولة GitHub تعمل في UTC، لذا فإن بدء الساعة 06:00 يسقط في ساعة محلية مختلفة لكل فريق. اكتب المنطقة الزمنية في دليل التشغيل حتى لا يفاجأ أحد بالسجل.

أسئلة حول تشغيل المراجعة

معظم هذه الأسئلة تأتي من فرق قامت بجدولة المهمة لأول مرة.

هل هذا هو google backlink checker API؟

إنها مراجعة مبنية على API الخاص بنا، وليست منتج Google. لا تنشر جوجل API روابط خلفية عام، لذا تأتي الأرقام من زاحفنا الخاص وفهرسنا الخاص.

هل يمكن للمراجعة أن تعمل مع كل بناء؟

يمكن، لكن سحب refdomains الشهري لا يحتاج إلى التشغيل في كل بناء. قم بتشغيل النظرة العامة المجانية في كل نشر، والسحوبات المدفوعة مرة واحدة في الشهر.

هل ما زلت بحاجة إلى المراجعة إذا كان لدي بوابة؟

نعم، إذا كنت تنشر من خلال إضافات أو CDN. ترى البوابة مسودتك، والمراجعة ترى الصفحة الحية. يمسك كل واحد فشل لا يمكن للآخر رؤيته.

ماذا لو فشلت المهمة في منتصف الطريق؟

اكتب نتيجة كل خطوة في ملفها الخاص، حتى يترك سحب الفشل النظرة العامة سليمة. أعد التشغيل من الخطوة الفاشلة بدلاً من الأعلى، مما يتجنب الدفع لنفس السحب مرتين.

كم رصيد يجب أن أخصص لكل موقع؟

خصص 4 رصيد لكل موقع في الشهر للسحبين المدفوعين، بالإضافة إلى أي شيء تنفقه البوابات على المسودات. النظرة المجانية لا تضيف شيئًا إلى هذا الرقم، والسجل يخبرك بالمجموع الحقيقي.

لماذا يت disagree تشغيلان بعد أيام قليلة؟

يتم تحديث الفهرر تقريبًا مرة واحدة في الشهر، لذا فإن التغييرات اليومية هي عادة ضوضاء. قارن لقطة هذا الشهر مع الشهر الماضي قبل فتح حادث.

اعتماد دليل التشغيل

  • السر موجود وسير العمل قد عمل مرة واحدة يدويًا.
  • يسجل ملف السجل التاريخ، URL، الاستدعاءات و _credits.
  • شخص يملك قناة التنبيه.
  • المهمة تعامل البيانات الشهرية كشهرية.
  • فشل المراجعة نفسها يصف شخصًا.