<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>jemai</title>
  <link>https://jemai.cc/ar/</link>
  <description>مدونة تقنية عن Workers والاستدلال وهندسة الفرق الصغيرة. تُكتب المقالة بلغة واحدة وتُنشر بالصينية والإنجليزية واليابانية والإسبانية والعربية.</description>
  <language>ar</language>
  <lastBuildDate>Sat, 17 Oct 2026 16:33:47 GMT</lastBuildDate>
  <atom:link href="https://jemai.cc/ar/rss.xml" rel="self" type="application/rss+xml"/>
  <item>
    <title>صفر خبرة تقنية وصفر تكلفة: أنشئ مدونتك المستقلة على نطاق علوي خاص بك في 30 دقيقة (دليل CF CMS خطوة بخطوة)</title>
    <link>https://jemai.cc/ar/posts/zero-cost-blog-cf-cms</link>
    <guid isPermaLink="true">https://jemai.cc/ar/posts/zero-cost-blog-cf-cms</guid>
    <pubDate>Sat, 17 Oct 2026 11:55:13 GMT</pubDate>
    <description>لا تجيد البرمجة ولا تريد استئجار خادم؟ مع CF CMS مفتوح المصدر والخطة المجانية من Cloudflare، لن تدفع سوى ثمن النطاق. أمر واحد ينشر مدونة متعددة اللغات على نطاقك الخاص يمكن لوكيل ذكاء اصطناعي تشغيلها، مع الخطوات كاملة ودليل سريع للأخطاء.</description>
    <content:encoded><![CDATA[<p>هل مررت بلحظة كهذه من قبل؟</p>
<p>تكتب على منصة ما منذ سنتين، ثم <strong>يكفي تقييد واحد للوصول أو حظر واحد للحساب حتى يختفي محتواك ومتابعوك في لحظة</strong>.</p>
<p>تقرر أن تنشئ مدونتك الخاصة، فتبحث عن شرح: استأجر خادمًا، جهّز البيئة، اضبط Nginx، فعّل HTTPS، وتصدَّ للهجمات كل يوم… فتستسلم قبل أن تكتب كلمة واحدة.</p>
<p>هذا المقال مكتوب لك.</p>
<p>سأرافقك خطوة بخطوة لإنشاء <strong>مدونة مستقلة على نطاق علوي خاص بك</strong> فوق Cloudflare، باستخدام المشروع مفتوح المصدر <strong>CF CMS</strong>. والموقع الذي تقرؤه الآن بُني بهذه الطريقة نفسها.</p>
<p>لنكن واضحين منذ البداية:</p>
<ul>
<li><strong>صفر خبرة تقنية</strong>: لا تحتاج إلى البرمجة. كل ما في الأمر <strong>نسخ ولصق ثم Enter</strong>. وإن لم تكن لديك رغبة حتى في ذلك، فسلّم الأوامر إلى وكيل ذكاء اصطناعي ودعه ينفذها.</li>
<li><strong>صفر تكلفة</strong>: <strong>باستثناء النطاق نفسه</strong> (الامتدادات الرخيصة تكلف بضعة دولارات في السنة)، يعمل الموقع وقاعدة البيانات وتخزين الصور والترجمة التلقائية كلها على الخطة المجانية من Cloudflare. <strong>لا حاجة لاستئجار أي خادم.</strong></li>
</ul>
<p>مستعد؟ لنبدأ.</p>
<h2 id="الخلاصة-أول-ا-ماذا-ستحصل-عليه">الخلاصة أولًا: ماذا ستحصل عليه</h2>
<ul>
<li>✅ نطاق علوي خاص بك، مثل <code>yourdomain.com</code></li>
<li>✅ HTTPS تلقائي + شبكة CDN عالمية، بسرعة لا تقل عن المواقع الكبرى</li>
<li>✅ <strong>خمس لغات: الصينية والإنجليزية واليابانية والإسبانية والعربية.</strong> تكتب مرة واحدة وتُترجم عند الحفظ</li>
<li>✅ 8 قوالب جاهزة + شعار وأيقونة favicon ولون سمة بنقرة واحدة</li>
<li>✅ لوحة تحكم مخفية خلف مسار سري عشوائي؛ فزيارة <code>/admin</code> مباشرة تعيد 404</li>
<li>✅ واجهة MCP مدمجة، ليتمكن <strong>وكيل ذكاء اصطناعي من نشر المقالات وتعديل الإعدادات نيابة عنك</strong></li>
</ul>
<p>كل ما تحتاجه ثلاثة أشياء:</p>
<ul>
<li><input disabled="" type="checkbox"> نطاق (سأشرح لك كيف تشتريه)</li>
<li><input disabled="" type="checkbox"> حساب مجاني على Cloudflare</li>
<li><input disabled="" type="checkbox"> حاسوب يمكنك فتح الطرفية عليه (macOS / Linux؛ وعلى Windows يُنصح باستخدام WSL)</li>
</ul>
<h2 id="مخطط-واحد-أين-يعمل-كل-هذا-فعل-ا">مخطط واحد: أين يعمل كل هذا فعلًا؟</h2>
<p><img src="/media/images/2026/10/a6f004bc-9cee-4ad5-ad9e-e1ba0ae6e689.png" alt="مخطط بنية CF CMS: يصل الزوار إلى yourdomain.com عبر DNS وشبكة CDN من Cloudflare ثم إلى Pages Functions، وخلفها قاعدة بيانات D1 وتخزين الصور R2 والترجمة عبر Workers AI" loading="lazy" decoding="async"></p>
<p>باختصار:</p>
<ul>
<li><strong>Pages</strong>: الموقع نفسه، يتولى عرض الصفحات</li>
<li><strong>D1</strong>: قاعدة البيانات، تحفظ المقالات والوسوم والإعدادات</li>
<li><strong>R2</strong>: لتخزين الصور</li>
<li><strong>Workers AI</strong>: يترجم مقالك إلى اللغات الأربع الأخرى عند الحفظ</li>
</ul>
<p><strong>لا يوجد خادم واحد عليك صيانته.</strong> التحديثات الأمنية والتوسّع والحماية من هجمات DDoS كلها من مسؤولية Cloudflare.</p>
<h2 id="العملية-كاملة-في-صورة-واحدة-8-خطوات">العملية كاملة في صورة واحدة: 8 خطوات</h2>
<p><img src="/media/images/2026/10/8c5ccb23-d13f-4d5f-8ccf-822fa287c2ff.png" alt="الخطوات الثماني من الصفر إلى الإطلاق: شراء نطاق، ربطه بـ Cloudflare، إنشاء رمز API، تفعيل R2، الحصول على الكود، النشر بأمر واحد، الدخول إلى لوحة التحكم المخفية، الكتابة والتشغيل" loading="lazy" decoding="async"></p>
<p>إن سار كل شيء على ما يرام، فالأمر يستغرق <strong>من 30 إلى 60 دقيقة</strong>. والخطوة الوحيدة التي تحتاج فعلًا إلى تفكير هي الأولى: <strong>اختيار اسم جيد</strong>.</p>
<h2 id="الخطوة-1-اشتر-نطاق-ا">الخطوة 1: اشترِ نطاقًا</h2>
<p>النطاق هو عنوانك على الإنترنت، وهو <strong>الشيء الوحيد في هذا الحل الذي يكلّف مالًا</strong>.</p>
<p>يمكنك الشراء من أي مسجّل موثوق، مثل Spaceship أو Cloudflare Registrar أو Namecheap. <strong>اختر مسجّلًا بأسعار واضحة وتجديد معقول ويدعم حماية خصوصية WHOIS.</strong></p>
<p>ثلاث نصائح سريعة لاختيار النطاق:</p>
<ol>
<li><strong>قصير وسهل التذكر وسهل الكتابة.</strong> إن استطعت أن تقوله لصديق بصوت عالٍ، فهو نطاق جيد.</li>
<li><strong>انظر إلى سعر التجديد، لا إلى سعر السنة الأولى فقط.</strong> بعض الامتدادات رخيصة جدًا في السنة الأولى ثم يتضاعف سعرها عدة مرات في السنة الثانية.</li>
<li>لا تتمسك بـ <code>.com</code>: فامتدادات مثل <code>.cc</code> و<code>.dev</code> و<code>.me</code> مناسبة جدًا للمدونات الشخصية.</li>
</ol>
<h2 id="الخطوة-2-اربط-نطاقك-بـ-cloudflare">الخطوة 2: اربط نطاقك بـ Cloudflare</h2>
<ol>
<li>افتح موقع Cloudflare وأنشئ <strong>حسابًا مجانيًا</strong>.</li>
<li>اضغط <strong>Add a site</strong>، وأدخل نطاقك، واختر خطة <strong>Free</strong>.</li>
<li>سيعطيك Cloudflare <strong>عنوانَي خادم أسماء (Nameserver)</strong>.</li>
<li>ارجع إلى لوحة التحكم لدى المسجّل الذي اشتريت منه النطاق، واستبدل خوادم الأسماء بهذين العنوانين.</li>
<li>انتظر من بضع دقائق إلى بضع ساعات. عندما يظهر في Cloudflare الوضع <strong>Active</strong>، يكون الأمر قد تم.</li>
</ol>
<p><strong>نقطة مهمة: يجب أن يكون النطاق في حساب Cloudflare نفسه الذي ستنشر منه لاحقًا.</strong> فسكربت التثبيت يبحث عن النطاق باستخدام رمز API.</p>
<h2 id="الخطوة-3-أنشئ-رمز-api-انسخ-ما-يلي-كما-هو">الخطوة 3: أنشئ رمز API (انسخ ما يلي كما هو)</h2>
<p>المسار: أيقونة الملف الشخصي أعلى يمين Cloudflare ← <strong>My Profile ← API Tokens ← Create Token ← Create Custom Token</strong>.</p>
<p>فعّل الصلاحيات الموضحة في الصورة واحدة تلو الأخرى:</p>
<p><img src="/media/images/2026/10/0a5a224c-c80d-4c9c-a7bc-34c19abdc3f9.png" alt="قائمة صلاحيات رمز API في Cloudflare: على مستوى الحساب Cloudflare Pages Edit وD1 Edit وWorkers R2 Storage Edit وAccount Settings Read، وعلى مستوى المنطقة Zone Read وDNS Edit" loading="lazy" decoding="async"></p>
<ul>
<li>Account · Cloudflare Pages · <strong>Edit</strong></li>
<li>Account · D1 · <strong>Edit</strong></li>
<li>Account · Workers R2 Storage · <strong>Edit</strong></li>
<li>Account · Account Settings · <strong>Read</strong></li>
<li>Zone · Zone · <strong>Read</strong> (عند استخدام نطاقك الخاص)</li>
<li>Zone · DNS · <strong>Edit</strong> (عند استخدام نطاقك الخاص)</li>
</ul>
<p>تنبيهان:</p>
<ul>
<li><strong>لا يحتاج Workers AI إلى أي صلاحية إضافية</strong>، فالموقع يستخدم ربط الذكاء الاصطناعي (AI binding) في Pages أثناء التشغيل.</li>
<li><strong>هذا الرمز مخصص لسكربت التثبيت فقط، فلا تعطه لوكيل الكتابة.</strong> يُعرض مرة واحدة فقط بعد إنشائه، فاحفظه فورًا.</li>
</ul>
<h2 id="الخطوة-4-فع-ل-r2">الخطوة 4: فعّل R2</h2>
<p>R2 هو مكان حفظ الصور، و<strong>يجب تفعيله يدويًا من لوحة التحكم مسبقًا</strong>؛ فالسكربت لا يستطيع الضغط على هذا الزر بدلًا منك.</p>
<p>افتح <strong>R2</strong> من الشريط الجانبي الأيسر في لوحة تحكم Cloudflare واضغط تفعيل.</p>
<p>⚠️ بصراحة: <strong>بعض الحسابات تتطلب إضافة بطاقة أو حساب PayPal قبل تفعيل R2</strong>. لا تقلق، فإضافتها لا تعني أنك ستُحاسَب؛ <strong>فالاستخدام ضمن الحصة المجانية (10 GB من التخزين) بلا مقابل</strong>. ومن الصعب أن تستهلك صور مدونة شخصية هذه الحصة.</p>
<p>هنا بالضبط تعثّر نشري الأول: توقف السكربت في منتصف الطريق برسالة <code>10042</code> لأن R2 لم يكن مفعّلًا. فعّلته وأعدت التشغيل، فمرّ كل شيء من المحاولة الأولى.</p>
<h2 id="الخطوة-5-احصل-على-الكود">الخطوة 5: احصل على الكود</h2>
<p>CF CMS مفتوح المصدر، والكود موجود على GitHub: <code>github.com/jemkuo/cf-cms</code></p>
<p>اختر أحد الخيارين:</p>
<ul>
<li><strong>الموصى به</strong>: اضغط <strong>Fork</strong> على GitHub لنسخه إلى حسابك، فيسهل عليك تعديله لاحقًا.</li>
<li>أو استنسخه مباشرة:</li>
</ul>
<pre class="code"><code class="language-bash">git clone https://github.com/jemkuo/cf-cms.git
cd cf-cms</code></pre>
<p>تحتاج إلى تثبيت <strong>Node.js 20 أو أحدث</strong> على حاسوبك (نزّل برنامج التثبيت من الموقع الرسمي واتبع الخطوات).</p>
<h2 id="الخطوة-6-انشر-بأمر-واحد">الخطوة 6: انشر بأمر واحد ⭐</h2>
<p>هذه أهم خطوة في المقال كله. أولًا، ضع رمز الخطوة 3 في متغير بيئة (<strong>يبقى داخل الطرفية فقط، ولن يطبعه السكربت أبدًا</strong>):</p>
<pre class="code"><code class="language-bash">export CLOUDFLARE_API_TOKEN=paste-your-token</code></pre>
<p>ثم <strong>أمر واحد فقط</strong>:</p>
<pre class="code"><code class="language-bash">npm install &amp;&amp; ./scripts/setup.sh --project myblog --domain yourdomain.com</code></pre>
<p>استبدل <code>myblog</code> باسم المشروع الذي تريده، و<code>yourdomain.com</code> بنطاقك.</p>
<p>لست مطمئنًا؟ أضف <code>--dry-run</code> لتجربة أولية <strong>تفحص فقط ولا تنشئ أي شيء</strong>:</p>
<pre class="code"><code class="language-bash">./scripts/setup.sh --project myblog --domain yourdomain.com --dry-run</code></pre>
<h3 id="يبدأ-بـ-فحص-شامل-أول-ا">يبدأ بـ«فحص شامل» أولًا</h3>
<p>قبل أن يلمس أي شيء، يطبع السكربت <strong>قائمة فحص مسبق</strong>: الرمز والحساب وPages وD1 وR2 والنطاق، بندًا بندًا.</p>
<p><img src="/media/images/2026/10/9ca9725b-50b7-4b8b-b3e4-ed7e2a71ed4c.png" alt="محاكاة طرفية لقائمة الفحص المسبق في setup.sh: يفشل التشغيل الأول بالخطأ 10042 لأن R2 غير مفعّل، وبعد تفعيل R2 تنجح إعادة التشغيل وتنبّه إلى وجود سجلات DNS قديمة على النطاق" loading="lazy" decoding="async"></p>
<ul>
<li><strong>كلها ✓</strong>: ينشئ تلقائيًا قاعدة بيانات D1 وحاوية R2 ومشروع Pages والمفاتيح السرية، ثم ينشر الموقع.</li>
<li><strong>يوجد ✗</strong>: <strong>لا ينشئ أي مورد على الإطلاق</strong>، ويخبرك أي خطوة فيها مشكلة، وأين تصلحها في لوحة التحكم، وأي أمر تعيد تشغيله، بالصينية والإنجليزية.</li>
<li><strong>لا داعي للبحث عن account id</strong>: إذا كان الرمز يرى حسابًا واحدًا فقط، يملؤه السكربت تلقائيًا.</li>
</ul>
<h3 id="فشل-في-المنتصف-أعد-التشغيل-ببساطة">فشل في المنتصف؟ أعد التشغيل ببساطة</h3>
<p>يُحفظ التقدم محليًا في الملف <code>.cf-cms-setup.json</code>. <strong>إعادة التشغيل تكمل من حيث توقفت</strong>، وتُعاد استخدام موارد D1 وR2 وPages التي أُنشئت مسبقًا، فلا تتكرر ولا تُمسح مقالاتك.</p>
<h3 id="سجلات-قديمة-على-نطاقك-سيسألك-أول-ا">سجلات قديمة على نطاقك؟ سيسألك أولًا</h3>
<p>إذا كان نطاقك يشير سابقًا إلى خادم آخر، فإن السكربت <strong>يعرض أولًا سجلات A / AAAA / CNAME القديمة، ولا يحذفها افتراضيًا</strong>.</p>
<p>بعد أن تتأكد من إمكانية استبدالها، أعد التشغيل مع <code>--replace-dns</code> (أو أجب بـ <code>y</code> عند السؤال)، فيستبدلها بسجل CNAME يشير إلى Pages:</p>
<p><img src="/media/images/2026/10/311e3ccb-67f2-44e3-bdcf-b47ddc7c22fb.png" alt="سجلات DNS قبل التبديل وبعده: سجلّا A يشيران إلى خادم قديم يُستبدلان بسجل CNAME بسحابة برتقالية يشير إلى yourproject.pages.dev، مع الإبقاء على سجل TXT للتحقق" loading="lazy" decoding="async"></p>
<p><strong>انتبه</strong>: بعد الاستبدال، لن تعود الخدمات التي كان يقدمها الخادم القديم على هذا النطاق متاحة. أما سجلات TXT وغيرها فتبقى كما هي.</p>
<h3 id="بعد-انتهاء-التشغيل">بعد انتهاء التشغيل</h3>
<p>آخر ما تطبعه الطرفية سطر يحتوي <strong>عنوان لوحة التحكم (Admin)</strong>، بهذا الشكل:</p>
<pre class="code"><code class="language-text">Admin:      https://yourdomain.com/&lt;ADMIN_SAFEPATH&gt;/admin/</code></pre>
<p>كلمة مرور لوحة التحكم <strong>تُولَّد عشوائيًا</strong> وتُكتب في الملف <code>.dev.vars</code> داخل مجلد المشروع، <strong>ولا تظهر على الشاشة</strong>.</p>
<p>👉 <strong>احفظ عنوان Admin مع ملف <code>.dev.vars</code> في مكان آمن</strong>، فهما مفاتيح مدونتك.</p>
<p>إذا ظهرت حالة النطاق <code>pending</code> فلا تقلق، فإصدار الشهادة وانتشار DNS يستغرقان عادة بضع دقائق.</p>
<h2 id="الخطوة-7-ادخل-لوحة-التحكم-المخفية-وامنح-موقعك-طابعك">الخطوة 7: ادخل لوحة التحكم المخفية وامنح موقعك طابعك</h2>
<p>افتح عنوان Admin وأدخل كلمة المرور:</p>
<p><img src="/media/images/2026/10/27918977-8d29-4389-831d-ba5b8c5c96c2.png" alt="لقطة شاشة حقيقية لصفحة تسجيل الدخول إلى لوحة تحكم CF CMS المخفية على العنوان yourdomain.com/&lt;ADMIN_SAFEPATH&gt;/admin/" loading="lazy" decoding="async"></p>
<p><strong>لماذا نخفيها؟</strong> معظم أدوات الفحص الآلي تطرق <code>/admin</code> و<code>/wp-login</code>. أما لوحة تحكم CF CMS فتقع خلف مسار عشوائي، فزيارة <code>/admin</code> مباشرة تعيد 404 ولا يظهر حتى نموذج تسجيل الدخول.</p>
<p>بعد الدخول، ابدأ بأمرين:</p>
<ol>
<li><strong>اختر قالبًا</strong>: مدونة تقنية شخصية (Dispatch وSignal)، ونمط حياة (Atelier وHearth)، وموقع شركة (Practice وCivic)، وشركة تقنية (Launch وOrbit)، إضافة إلى القوالب الأصلية Paper وInk وTerminal.</li>
<li><strong>أنشئ حزمة الهوية البصرية بنقرة واحدة</strong>: اضغط <strong>Generate visual kit</strong> ليُنشئ تلقائيًا <strong>شعارًا وأيقونة favicon ولون سمة</strong> متناسقة مع القالب. لم تعجبك؟ أعد التوليد، أو استبدلها بصورك الخاصة.</li>
</ol>
<h2 id="الخطوة-8-اكتب-واحصل-على-خمس-لغات-تلقائي-ا">الخطوة 8: اكتب، واحصل على خمس لغات تلقائيًا</h2>
<p>يأتي الموقع بعد نشره مباشرة ببضع مقالات تجريبية لترى شكله:</p>
<p><img src="/media/images/2026/10/11177172-d757-4c54-b968-62443f0e7e0a.png" alt="لقطة شاشة حقيقية للصفحة الرئيسية للمدونة بعد نشر CF CMS بالقالب الافتراضي Paper، مع مبدّل في الأعلى بين الصينية والإنجليزية واليابانية والإسبانية والعربية" loading="lazy" decoding="async"></p>
<p>بعد أن تلقي نظرة، احذفها واكتب مقالاتك:</p>
<ul>
<li>اكتب بصيغة <strong>Markdown</strong>: العناوين والقوائم وكتل الكود والصور كلها مدعومة</li>
<li>ارفع الصور مباشرة، فتُحفظ في R2</li>
<li><strong>فعّل خيار الترجمة عند الحفظ</strong>، فيُنشئ Workers AI النسخ الإنجليزية واليابانية والإسبانية والعربية تلقائيًا (مع تنسيق العربية من اليمين إلى اليسار تلقائيًا)</li>
<li>اضبط SEO لكل مقال على حدة: الكلمات المفتاحية وعنوان canonical وصورة المشاركة Open Graph</li>
</ul>
<p><strong>تكتب مرة واحدة، فيجدك القرّاء بخمس لغات.</strong> وهذا ما لا تقدمه كثير من المنصات الكبرى.</p>
<h2 id="التشغيل-اليومي-اجعل-وكيل-الذكاء-الاصطناعي-محررك">التشغيل اليومي: اجعل وكيل الذكاء الاصطناعي محررك</h2>
<p>إطلاق المدونة مجرد بداية. ما يوفّر عليك الجهد حقًا هو أن <strong>التشغيل اليومي يمكن تسليمه للذكاء الاصطناعي بالكامل تقريبًا</strong>.</p>
<h3 id="1-اربط-وكيل-الذكاء-الاصطناعي-بجملة-واحدة">1. اربط وكيل الذكاء الاصطناعي بجملة واحدة</h3>
<p>يأتي CF CMS بواجهة MCP مدمجة (على المسار <code>/mcp</code> في نطاقك). في Cursor أو Claude أو أي عميل يدعم MCP، <strong>الصق «الوصف في جملة واحدة» الجاهز في ملف README الخاص بالمشروع</strong>، ثم أضف <code>ADMIN_API_TOKEN</code> من ملف <code>.dev.vars</code>، وسيتمكن الوكيل من:</p>
<ul>
<li>عرض المقالات وإنشائها وتعديلها ونشرها وحذفها</li>
<li>إدارة الوسوم والأقسام والقوالب والشعار</li>
<li>رفع الصور</li>
</ul>
<p>بعد الربط، يكفي أن تقول له:</p>
<blockquote>
<p>«أنشئ مسودة بالصينية بالمعرّف edge-notes في قسم notes، وترجمها إلى اللغات الأخرى.»</p>
</blockquote>
<p><strong>أمان مدروس</strong>: رمز <code>ADMIN_API_TOKEN</code> يدير المحتوى فقط، <strong>ولا يستطيع النشر ولا الوصول إلى حسابك في Cloudflare</strong>. ولهذا السبب أيضًا لا تعطِ الوكيل رمز Cloudflare من الخطوة 3.</p>
<h3 id="2-غي-ر-المفاتيح-السرية-دوري-ا">2. غيّر المفاتيح السرية دوريًا</h3>
<p>تشك في تسرّب كلمة مرور أو رمز؟ استبدله بأمر واحد:</p>
<pre class="code"><code class="language-bash">npx wrangler pages secret put ADMIN_PASSWORD --project-name myblog</code></pre>
<p>والأمر نفسه ينطبق على <code>ADMIN_API_TOKEN</code> و<code>SESSION_SECRET</code>. وبعد اكتمال النشر، يمكنك أيضًا حذف رمز Cloudflare API من الخطوة 3 أو تغييره، ثم إنشاء رمز جديد عند النشر التالي.</p>
<h3 id="3-اعرف-حدود-الحصة-المجانية">3. اعرف حدود الحصة المجانية</h3>
<table>
<thead>
<tr>
<th>المورد</th>
<th>دوره في المدونة</th>
<th>الحصة المجانية المعتادة</th>
</tr>
</thead>
<tbody><tr>
<td>Pages</td>
<td>الموقع وFunctions</td>
<td>500 عملية بناء شهريًا، و100,000 طلب Functions يوميًا</td>
</tr>
<tr>
<td>D1</td>
<td>المقالات والإعدادات</td>
<td>5 GB، مع حدود يومية لقراءة الصفوف وكتابتها</td>
</tr>
<tr>
<td>R2</td>
<td>الصور</td>
<td>10 GB تخزين، وعدد محدود من عمليات القراءة والكتابة</td>
</tr>
<tr>
<td>Workers AI</td>
<td>الترجمة عند الحفظ</td>
<td>10,000 Neurons يوميًا</td>
</tr>
</tbody></table>
<p>راجع الأرقام الحالية في لوحة تحكم Cloudflare. <strong>حركة زيارات مدونة شخصية لن تقترب من السقف في الغالب.</strong> الترجمة تعمل عند الحفظ فقط، لا مع كل زيارة، وحصة Workers AI تتجدد يوميًا.</p>
<h3 id="4-دليل-سريع-للأخطاء-الشائعة">4. دليل سريع للأخطاء الشائعة</h3>
<table>
<thead>
<tr>
<th>ما تراه</th>
<th>ماذا تفعل</th>
</tr>
</thead>
<tbody><tr>
<td><code>✗ R2 is not enabled</code>، الخطأ <strong>10042</strong></td>
<td>فعّل R2 من لوحة التحكم (قد تحتاج إلى إضافة وسيلة دفع أولًا)، ثم أعد التشغيل</td>
</tr>
<tr>
<td>الرمز مرفوض (<strong>10000</strong>) أو الصلاحيات ناقصة (<strong>9109</strong>، HTTP 403)</td>
<td>أكمل الصلاحيات حسب قائمة الخطوة 3، ثم نفّذ <code>export</code> من جديد وأعد التشغيل</td>
</tr>
<tr>
<td>النطاق عالق في حالة <strong>pending</strong></td>
<td>راجع سجلات A / AAAA / CNAME القديمة التي يعرضها السكربت، وبعد التأكد أعد التشغيل مع <code>--replace-dns</code>؛ وحتى بعد ضبط DNS تحتاج الشهادة إلى بضع دقائق</td>
</tr>
<tr>
<td>اسم مشروع Pages مستخدم</td>
<td>اختر اسمًا آخر عبر <code>--project</code></td>
</tr>
<tr>
<td>D1 أو R2 أو Pages موجود مسبقًا</td>
<td>أعد التشغيل ببساطة، فالموارد ذات الاسم نفسه يُعاد استخدامها</td>
</tr>
<tr>
<td>خطأ في الشبكة</td>
<td>تحقق من الاتصال وأعد التشغيل، وستُتخطى الخطوات المكتملة</td>
</tr>
</tbody></table>
<p><strong>تذكّر قاعدة واحدة: إذا ظهر خطأ، اقرأ الرسالة، أصلح المشكلة، ثم أعد التشغيل.</strong> فالسكربت يخبرك أين تصلح وماذا تشغّل.</p>
<h2 id="عن-صفر-خبرة-تقنية-بصراحة">عن «صفر خبرة تقنية»: بصراحة</h2>
<p>صحيح أنك ستفتح الطرفية وتكتب بعض الأوامر خلال هذه العملية.</p>
<p>لكنك <strong>لست بحاجة إلى فهم</strong> ما تفعله. كل ما عليك هو:</p>
<ol>
<li>انسخ الأمر</li>
<li>الصقه في الطرفية</li>
<li>اضغط Enter وتحقق من عدم ظهور ✗</li>
</ol>
<p>والطريقة الأكسل: <strong>أعطِ هذا المقال وملف README لوكيل الذكاء الاصطناعي ودعه ينفذ كل شيء عنك.</strong> وعندما يتوقف، فإما أنه يحتاج منك إلى نقرة في لوحة التحكم (مثل تفعيل R2)، أو إلى تأكيد منك (مثل استبدال DNS). اتبع التعليمات فقط.</p>
<h2 id="لنحسبها">لنحسبها</h2>
<table>
<thead>
<tr>
<th>البند</th>
<th>التكلفة</th>
</tr>
</thead>
<tbody><tr>
<td>النطاق</td>
<td><strong>بضعة دولارات سنويًا فما فوق</strong> (حسب الامتداد)</td>
</tr>
<tr>
<td>الخادم</td>
<td>0 (Cloudflare Pages)</td>
</tr>
<tr>
<td>قاعدة البيانات</td>
<td>0 (الحصة المجانية لـ D1)</td>
</tr>
<tr>
<td>تخزين الصور</td>
<td>0 (الحصة المجانية لـ R2)</td>
</tr>
<tr>
<td>الترجمة إلى خمس لغات</td>
<td>0 (الحصة المجانية لـ Workers AI)</td>
</tr>
<tr>
<td>شهادة HTTPS + CDN</td>
<td>0</td>
</tr>
<tr>
<td>برنامج CMS</td>
<td>0 (مفتوح المصدر)</td>
</tr>
</tbody></table>
<p><strong>باستثناء النطاق، لن تنفق قرشًا واحدًا.</strong></p>
<h2 id="في-الختام">في الختام</h2>
<p>المنصات تمنحك الانتشار، لكن الأرض تبقى دائمًا ملكًا لها.</p>
<p><strong>المدونة المستقلة هي أصلك الرقمي الحقيقي</strong>: النطاق لك، والمحتوى لك، والقرّاء يصلون إليك مباشرة.</p>
<p>اخطُ الخطوة الأولى اليوم: <strong>اختر نطاقًا يعجبك، واتبع هذا المقال من أوله إلى آخره.</strong></p>
<p>إن واجهتك مشكلة أثناء الإنشاء، فاترك تعليقًا. وإن وجدت المشروع مفيدًا، فنجمة ⭐ لـ CF CMS على GitHub موضع تقدير دائمًا.</p>
<p>في المقال القادم: <strong>كيف تجعل وكيل الذكاء الاصطناعي يدير هذه المدونة عنك كل يوم</strong>.</p>
]]></content:encoded>
    <category>CF CMS</category>
    <category>Cloudflare</category>
    <category>مدونة مستقلة</category>
    <category>بناء المواقع</category>
  </item>
</channel>
</rss>
