Technical SEO Audit Checklist: 100-Point Guide

Complete 100-point technical SEO audit checklist covering crawlability, Core Web Vitals, structured data, international SEO, indexation, and site architecture for 2026.

E
ECOSIRE Research and Development Team
|19 مارس 202611 دقائق قراءة2.5k كلمات|

قائمة مراجعة التدقيق الفني لتحسين محركات البحث: دليل مكون من 100 نقطة

لا يتعلق التدقيق الفني لتحسين محركات البحث (SEO) بالعلامات الوصفية وكثافة الكلمات الرئيسية، بل هو مراجعة هندسية منهجية لمدى تواصل موقعك مع محركات البحث. تؤثر إمكانية الزحف والفهرسة ومؤشرات الويب الأساسية والبيانات المنظمة والتحديد الأساسي والإشارات الدولية على ترتيبك قبل تقييم جزء واحد من المحتوى. في عام 2026، مع تزايد أهمية محركات البحث المدعومة بالذكاء الاصطناعي وAEO (تحسين محرك الإجابة) مثل تحسين محركات البحث التقليدية، أصبح الأساس التقني مهمًا أكثر من أي وقت مضى.

يتم تنظيم قائمة المراجعة المكونة من 100 نقطة حسب الفئة. اعمل من خلاله بشكل منهجي وتتبع النتائج في جدول بيانات. قم بإصلاح العناصر الهامة (التي تحمل علامة C) قبل أي عمل تحسين آخر - حيث يمكن أن تمنع الباقي من أن يكون له أي تأثير.

الوجبات الرئيسية

  • تعد إمكانية الزحف هي البوابة الأولى - إذا لم يتمكن Googlebot من الوصول إلى صفحاتك، فلا يهم أي شيء آخر
  • تعتبر مؤشرات أداء الويب الأساسية (LCP، INP، CLS) بمثابة إشارات تصنيف مؤكدة؛ الهدف LCP <2.5 ثانية، INP <200 مللي ثانية، CLS <0.1
  • تمنع العلامات الأساسية تخفيف المحتوى المكرر - كل صفحة تحتاج إلى علامة واحدة تشير إلى نفسها
  • hreflang إلزامي للمواقع متعددة اللغات؛ يجب تعيين x-default لكل مجموعة عناوين URL
  • تتيح البيانات المنظمة (JSON-LD) الحصول على نتائج غنية وهي ضرورية لإسناد مصدر AI/LLM
  • HTTPS هو جدول حصص في عام 2026؛ يحظر المحتوى المختلط فهرسة الصفحات المتأثرة
  • فهرسة الهاتف المحمول أولاً تعني أن تجربة الهاتف المحمول هي ما تقيمه Google
  • يعمل الارتباط الداخلي مع نص الرابط الوصفي على توزيع نظام ترتيب الصفحات ويشير إلى مدى صلة الموضوع

القسم 1: إمكانية الزحف والفهرسة (C = بالغ الأهمية)

ملف الروبوتات.txt

  • (C) robots.txt يمكن الوصول إليه على /robots.txt ويعيد 200
  • (C) تم تعريف عنوان URL لخريطة الموقع: Sitemap: https://example.com/sitemap.xml
  • لا يتم حظر الصفحات الرئيسية عن طريق الخطأ بواسطة Disallow
  • توجيهات منفصلة لمعدل الزحف للروبوتات العدوانية
  • برامج زحف الذكاء الاصطناعي المسموح بها أو غير مسموح بها بشكل صريح وفقًا للسياسة (GPTBot، ClaudeBot، OAI-SearchBot)
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /api/
Disallow: /auth/
Sitemap: https://ecosire.com/sitemap.xml

# Allow AI indexers
User-agent: GPTBot
Allow: /
User-agent: ClaudeBot
Allow: /

خريطة الموقع بتنسيق XML

  • (C) يعرض ملف Sitemap 200 مع Content-Type: application/xml الصحيح
  • (C) تم تضمين جميع عناوين URL الأساسية؛ لا توجد عناوين URL محظورة بواسطة ملف robots.txt أو noindex
  • <lastmod> التواريخ دقيقة (ليست كلها نفس التاريخ الثابت)
  • <priority> و<changefreq> تم ضبطهما بشكل مناسب حسب نوع الصفحة
  • تقسيم خريطة الموقع إلى فهرس + خرائط مواقع فرعية للمواقع التي تحتوي على أكثر من 50000 عنوان URL
  • تم إرسال خريطة الموقع إلى Google Search Console وأدوات مشرفي المواقع Bing
  • تم تضمين خريطة موقع الصور للصفحات ذات الصور الثقيلة
  • عناوين URL للغة البديلة في خريطة الموقع (hreflang)
// Next.js sitemap.ts — programmatic with correct lastmod
export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
  const posts = await getAllBlogPosts();
  return [
    {
      url: 'https://ecosire.com',
      lastModified: new Date(),
      changeFrequency: 'daily',
      priority: 1.0,
    },
    ...posts.map((post) => ({
      url: `https://ecosire.com/blog/${post.slug}`,
      lastModified: new Date(post.updatedAt),
      changeFrequency: 'weekly' as const,
      priority: 0.8,
    })),
  ];
}

ميزانية الزحف

  • تستخدم صفحات ترقيم الصفحات rel="next" / rel="prev" (أو التمرير اللانهائي باستخدام SSR)
  • تكون عناوين URL للتنقل ذات الأوجه إما أساسية أو غير مفهرسة
  • تم استبعاد معرفات الجلسة ومعلمات التتبع من عناوين URL المفهرسة
  • إعادة توجيه السلاسل تقتصر على قفزة واحدة (من A إلى B، وليس من A إلى B إلى C)
  • لا توجد ملفات soft 404 — 404 صفحة تُرجع HTTP 404، وليس 200

القسم 2: HTTPS والأمن

  • (C) جميع الصفحات التي يتم عرضها عبر HTTPS بشهادة صالحة
  • (C) يعيد HTTP التوجيه إلى HTTPS (301، وليس 302)
  • (C) لا توجد تحذيرات بشأن محتوى مختلط (موارد HTTP على صفحات HTTPS)
  • تم تمكين HSTS مع max-age=31536000; includeSubDomains; preload
  • شهادة SSL متبقية لأكثر من 90 يومًا
  • تغطي الشهادة المتغيرات التي تحتوي على www وغير www
  • اكتملت سلسلة الشهادات (لا يوجد مرجع مصدق وسيط مفقود)
# Nginx HTTPS configuration
server {
    listen 443 ssl http2;
    server_name ecosire.com;

    ssl_certificate     /etc/letsencrypt/live/ecosire.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/ecosire.com/privkey.pem;
    ssl_protocols       TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;

    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
}

القسم 3: مؤشرات الويب الأساسية

أكبر طلاء محتوى (LCP) — الهدف: أقل من 2.5 ثانية

  • (C) عنصر LCP المحدد في CrUX/PageSpeed Insights
  • الصورة/الفيديو الرئيسي محمّل مسبقًا بـ <link rel="preload" as="image">
  • يتم عرض صورة LCP مع السمة fetchpriority="high" الصحيحة
  • الصور بتنسيق WebP أو AVIF، وليس PNG/JPEG حيثما أمكن ذلك
  • حجم الصور مناسب (لا يتم عرض صورة بحجم 4000 بكسل عند 800 بكسل)
  • خدمة CDN للأصول الثابتة مع التخزين المؤقت للحافة
  • خادم TTFB أقل من 800 مللي ثانية (يقلل نافذة LCP)
// Next.js: priority prop preloads the hero image
<Image
  src="/hero.webp"
  alt="Hero image"
  width={1200}
  height={630}
  priority
  sizes="100vw"
/>

التفاعل مع الطلاء التالي (INP) — الهدف: أقل من 200 مللي ثانية

  • تحديد المهام الطويلة (أكثر من 50 مللي ثانية) وتقسيمها
  • تم تأجيل جافا سكريبت الثقيلة أو تحميلها ببطء
  • تتميز معالجات الأحداث بالكفاءة ولا تتسبب في إعادة حساب التخطيط
  • البرامج النصية لجهات خارجية محملة بـ async أو defer

التحول التراكمي للتخطيط (CLS) - الهدف: أقل من 0.1

  • (C) تحتوي جميع الصور ومقاطع الفيديو على سمات width وheight الصريحة
  • تستخدم خطوط الويب font-display: optional أو swap مع إمكانية ضبط الحجم الاحتياطي
  • الشرائح الإعلانية لها أبعاد محجوزة
  • يتم تجنب المحتوى الذي يتم حقنه ديناميكيًا فوق الجزء المرئي من الصفحة
  • الرسوم المتحركة تستخدم transform وopacity فقط (وليس top، left، width)

القسم 4: بنية عنوان URL وتحديد المستوى الأساسي

  • (C) تحتوي كل صفحة على علامة أساسية ذاتية المرجع
  • (C) يتطابق عنوان URL للعلامة الأساسية مع عنوان URL الفعلي الذي تم تقديمه (الشرطة المائلة اللاحقة متسقة)
  • إعادة توجيه www وغير www إلى الإصدار الأساسي
  • عناوين URL هي أحرف صغيرة، وتستخدم الواصلات كفواصل للكلمات، ولا تحتوي على شرطات سفلية
  • عمق عنوان URL في 4 مستويات على الأكثر من الجذر للصفحات المهمة
  • لا توجد معلمات URL تنشئ محتوى مكررًا دون تحديد العنوان الأساسي
  • يتم تحويل السلسلة المرقّمة إلى الصفحة الأولى (أو كل صفحة متعارف عليها ذاتيًا)
// Next.js generateMetadata with canonical
export async function generateMetadata({ params }: Props): Promise<Metadata> {
  const { locale, slug } = await params;
  const base = locale === 'en' ? '' : `/${locale}`;
  const canonicalUrl = `https://ecosire.com${base}/blog/${slug}`;

  return {
    alternates: {
      canonical: canonicalUrl,
      languages: buildHreflangUrls(slug), // all 11 locales
    },
  };
}

القسم 5: البيانات الوصفية وتحسين محركات البحث على الصفحة

  • (C) تحتوي كل صفحة على علامة <title> فريدة (50-60 حرفًا)
  • (C) تحتوي كل صفحة على <meta name="description"> فريد (150-160 حرفًا)
  • العناوين تتبع النمط: Primary Keyword | Brand Name
  • لا توجد علامات عنوان مكررة عبر الموقع
  • فتح علامات الرسم البياني: og:title، og:description، og:image، og:url، og:type
  • علامات بطاقة Twitter/X: twitter:card، twitter:title، twitter:image
  • حجم صور OG هو 1200 × 630 بكسل، وحجمها أقل من 8 ميجابايت، ويتم تقديمها من CDN
  • <meta name="robots"> يُستخدم فقط لتقييد (ليس زائدًا عن الحاجة index,follow)
  • <html lang="en"> تم ضبطه بشكل صحيح لجميع الصفحات

القسم 6: البيانات المنظمة (JSON-LD)

  • (C) يُفضل JSON-LD على Microdata/RDFa (أسهل في الصيانة، وسهل التحليل)
  • مخطط المؤسسة على الصفحة الرئيسية مع عناوين URL للملفات الشخصية الاجتماعية sameAs
  • مخطط موقع الويب مع SearchAction لمربع البحث عن روابط أقسام الموقع
  • مخطط BreadcrumbList في جميع الصفحات الموجودة أسفل الصفحة الرئيسية
  • مخطط المقالة في منشورات المدونة التي تحتوي على datePublished، dateModified، author
  • مخطط صفحة الأسئلة الشائعة في الصفحات التي تحتوي على أقسام الأسئلة الشائعة
  • مخطط المنتج على صفحات المنتج مع offers، aggregateRating
  • مخطط الخدمة على صفحات الخدمة مع areaServed، serviceType
  • خاصية [ ] inLanguage في جميع المخططات لإسناد الذكاء الاصطناعي متعدد اللغات
  • تم التحقق من صحة البيانات المنظمة في اختبار النتائج الغنية من Google
// JSON-LD with XSS protection
// The .replace() encodes the less-than sign to prevent </script> breakout,
// making this safe for use in a script tag (no untrusted HTML rendered)
export function JsonLd({ data }: { data: Record<string, unknown> }) {
  const safeJson = JSON.stringify(data).replace(/</g, '\\u003c');

  return (
    <script
      type="application/ld+json"
      // Safe: safeJson is a sanitized JSON string, not HTML
      dangerouslySetInnerHTML={{ __html: safeJson }}
    />
  );
}

// Usage
const schema = {
  '@context': 'https://schema.org',
  '@type': 'FAQPage',
  inLanguage: locale,
  mainEntity: faqs.map((faq) => ({
    '@type': 'Question',
    name: faq.question,
    acceptedAnswer: { '@type': 'Answer', text: faq.answer },
  })),
};

<JsonLd data={schema} />

القسم 7: تحسين محركات البحث الدولية

  • (C) علامات hreflang على جميع الصفحات التي تحتوي على متغيرات اللغة
  • (C) x-default تم تعيين hreflang لكل مجموعة عناوين URL
  • سمات hreflang تكون ثنائية الاتجاه (إذا كان /en/ يرتبط بـ /fr/، فيجب أن يرتبط /fr/ مرة أخرى بـ /en/)
  • تستخدم عناوين URL المحلية رموز اللغة ISO 639-1 + رموز المنطقة ISO 3166-1 عند الحاجة
  • <html lang="xx"> يطابق لغة hreflang لتلك الصفحة
  • لغات RTL (العربية، العبرية، الأردية) تستخدم dir="rtl" على <html>
  • يتم ترجمة المحتوى، وليس فقط ترجمته تلقائيًا دون مراجعة
  • تم ضبط الاستهداف الجغرافي في Google Search Console لكل دليل فرعي للغة
// Next.js hreflang via generateMetadata
const locales = ['en', 'zh', 'es', 'ar', 'pt', 'fr', 'de', 'ja', 'tr', 'hi', 'ur'];

// In generateMetadata:
// alternates.languages keys must be BCP 47 language tags
alternates: {
  languages: Object.fromEntries([
    ['x-default', `https://ecosire.com/blog/${slug}`],
    ['en',        `https://ecosire.com/blog/${slug}`],
    ['zh',        `https://ecosire.com/zh/blog/${slug}`],
    ['ar',        `https://ecosire.com/ar/blog/${slug}`],
    // ... all 11 locales
  ]),
},

القسم 8: الأداء والبنية التحتية

  • الأصول الثابتة المقدمة من CDN (CloudFront، Cloudflare، Fastly)
  • التخزين المؤقت للمتصفح: Cache-Control: public, max-age=31536000, immutable للأصول المجزأة
  • تمكين ضغط Gzip أو Brotli على الخادم
  • تمكين HTTP/2 أو HTTP/3
  • DNS TTL 3600s أو أقل لتجاوز الفشل السريع
  • زمن استجابة الخادم أقل من 200 مللي ثانية لـ HTML (قياس TTFB)
  • حزمة جافا سكريبت أقل من 250 كيلو بايت من التحميل الأولي (بصيغة gzipped)
  • تمت إزالة JavaScript غير المستخدمة (اهتزاز الشجرة، وتقسيم التعليمات البرمجية)
  • تطهير CSS من القواعد غير المستخدمة في الإنتاج
# Nginx compression + caching headers
gzip on;
gzip_types text/html text/css application/javascript application/json image/svg+xml;
gzip_min_length 1024;

location /_next/static/ {
    expires max;
    add_header Cache-Control "public, max-age=31536000, immutable";
}

القسم 9: تجربة الهاتف المحمول والمستخدم

  • (C) العلامة الوصفية لإطار العرض: <meta name="viewport" content="width=device-width, initial-scale=1">
  • تحتوي جميع العناصر التفاعلية على أهداف لمس بحجم 48x48 بكسل على الأقل
  • لا يوجد تمرير أفقي على الهاتف المحمول (أقصى عرض: 100 فولت واط)
  • حجم الخط لا يقل عن 16 بكسل للنص الأساسي (يمنع نظام iOS من التكبير التلقائي عند تركيز الإدخال)
  • تم اختبار التنقل عبر الهاتف المحمول على أجهزة حقيقية (iOS Safari، Chrome Android)
  • لا تغطي النوافذ المنبثقة والإعلانات البينية المحتوى الرئيسي على الهاتف المحمول
  • اضغط للاتصال بأرقام الهواتف لزوار الهاتف المحمول

القسم 10: AEO (تحسين محرك الإجابة)

أهمية متزايدة لمحركات بحث الذكاء الاصطناعي والمساعدين الصوتيين:

  • الإجابات الرئيسية مغلفة بالسمة data-speakable
  • <details>/<summary> يُستخدم لمحتوى الأسئلة الشائعة القابل للطي (القابل للزحف والدلالي)
  • تم نشر /llms.txt و/.well-known/llms.txt لبرامج زحف الذكاء الاصطناعي
  • فقرات إجابة موجزة وواقعية في أعلى الأقسام الرئيسية (تحسين المقتطف المميز)
  • علاقات الكيانات واضحة في البيانات المنظمة (المؤسسة إلى الخدمات إلى المنتجات)
  • اسم العلامة التجارية متسق في جميع الصفحات وملفات التعريف الاجتماعية والأدلة
  • [] يتم استخدام واجهة برمجة تطبيقات IndexNow لإرسال عنوان URL الفوري بعد نشر محتوى جديد

الأسئلة المتداولة

كم مرة يجب أن أقوم بإجراء تدقيق فني لتحسين محركات البحث؟

قم بإجراء تدقيق كامل ربع سنوي وزحف خفيف (Screaming Frog أو Sitebulb) شهريًا. إن أي تغيير مهم في الموقع — حزمة تقنية جديدة، أو ترحيل، أو إضافة محتوى دولي، أو إعادة تصميم رئيسية — يستدعي إجراء تدقيق فوري. قم بإعداد مراقبة مستمرة عبر تنبيهات Google Search Console للانخفاض المفاجئ في الصفحات المفهرسة أو أخطاء الزحف.

ما الأدوات التي أحتاجها لإجراء التدقيق الفني لتحسين محركات البحث؟

على الأقل: Google Search Console (مجاني، أساسي)، Screaming Frog أو Sitebulb (تحليل الزحف)، PageSpeed ​​Insights (Core Web Vitals)، اختبار Google Rich Results (بيانات منظمة)، WebAIM Contrast Checker (إمكانية الوصول/UX)، و Ahrefs أو Semrush (الروابط الخلفية، تصنيف الكلمات الرئيسية). بالنسبة للمواقع التي تستخدم JavaScript بكثرة، قم بإضافة Rendertron أو Botify للزحف المعروض.

ما هي المشكلة الأكثر شيوعًا في تحسين محركات البحث (SEO) الموجودة في عمليات التدقيق؟

تعد التكوينات الخاطئة للعلامة الأساسية هي أكثر النتائج الحاسمة شيوعًا - إما أنها مفقودة تمامًا، أو تشير إلى عنوان URL غير صحيح (غالبًا ما يكون مجال تطوير أو مجال مرحلي متبقي في الإنتاج)، أو غير متسقة مع استخدام الشرطة المائلة اللاحقة. والأمر الثاني الأكثر شيوعًا هو توجيهات noindex غير المقصودة من مكونات CMS الإضافية أو التكوينات المرحلية المتبقية في إصدارات الإنتاج.

هل يساعد جهاز توجيه التطبيقات Next.js في تحسين محركات البحث الفنية؟

نعم، بشكل ملحوظ. يعني العرض من جانب الخادم أن كل المحتوى موجود في استجابة HTML الأولية (لا يلزم استخدام JavaScript للزحف). تمنع البيانات التعريفية generateMetadata() لكل صفحة أخطاء البيانات التعريفية الثابتة العامة. تعمل اصطلاحات sitemap.ts وrobots.ts على تسهيل صيانة هذه الملفات برمجيًا. يفرض مكون الصورة المدمج العرض والارتفاع لمنع CLS ويقوم تلقائيًا بإنشاء متغيرات WebP/AVIF.

كيف أتعامل مع تحسين محركات البحث للمحتوى المرقّم؟

بالنسبة لأرشيفات المدونات المقسمة إلى صفحات أو قوائم المنتجات، يجب أن تحتوي كل صفحة على مرجع ذاتي أساسي (وليس أساسيًا للصفحة 1)، وعنوانًا وصفيًا يشير إلى رقم الصفحة، وإذا كان المحتوى كبيرًا، فاسمح بالفهرسة. بالنسبة للصفحات المرقّمة الرفيعة، ضع في اعتبارك علامة noindex على الصفحات التي تتجاوز الصفحة 3. أوقفت Google rel="next"/rel="prev" في عام 2019، لكنها لا تزال تستخدم من قبل محركات البحث الأخرى.


الخطوات التالية

يعد التدقيق الفني لتحسين محركات البحث (SEO) بمثابة استثمار لمرة واحدة يضاعف عائد الاستثمار لكل المحتوى الخاص بك وأعمالك التسويقية. تغطي النقاط المائة الموجودة في قائمة المراجعة هذه النطاق الكامل لما تقيمه محركات البحث قبل تصنيف المحتوى الخاص بك.

تطبق ECOSIRE أفضل الممارسات الفنية لتحسين محركات البحث كجزء قياسي من كل مشروع Next.js - بدءًا من خرائط الموقع الآلية وhreflang لـ 11 لغة محلية وحتى البيانات المنظمة وتحسين Core Web Vitals وتكامل واجهة برمجة التطبيقات IndexNow. استكشف خدمات تطوير الويب لدينا للتعرف على كيفية بناء مستوى رؤية البحث منذ اليوم الأول.

E

بقلم

ECOSIRE Research and Development Team

بناء منتجات رقمية بمستوى المؤسسات في ECOSIRE. مشاركة رؤى حول تكاملات Odoo وأتمتة التجارة الإلكترونية وحلول الأعمال المدعومة بالذكاء الاصطناعي.

الدردشة على الواتساب