تخطَّ إلى المحتوى
getnextpdf.com

لماذا نبني على Cloudflare

تتيح حزمة nextpdf/cloudflare لـ ⁨NextPDF⁩ أن يعرض ملفات ⁨PDF⁩ عند الحافة، وأن يؤرشف الملفات المُولَّدة إلى ⁨R2⁩، وأن يضبط طلبات واجهة البرمجة قبل أن تصل إلى ⁨worker⁩. تشرح بقية الصفحات في هذا القسم كيفية ذلك بالتفصيل. أما هذه الصفحة فمختلفة: فهي السبب القصير والصادق الذي جعلنا متحمّسين لبنائها أصلًا — وهي كلمة شكر.

سنقولها بوضوح: يحبّ فريق ⁨NextPDF⁩ البناء على ⁨Cloudflare⁩. إنها منصّة نختارها بسرور، وطبقتها المجانية السخيّة حقًّا جزء كبير من السبب. وهذا الكرم ليس تفصيلًا عابرًا عندنا — بل هو ما يتيح لفريق صغير أن يُعيد إلى مجتمع المصادر المفتوحة أكثر ممّا كان يقدر عليه لولاه: أن يبقى قدر أكبر من المحرّك مفتوحًا، وأن يُخصَّص وقت أكبر للأجزاء التي يستفيد منها الجميع، وأن تقلّ القرارات التي تحكمها كلفة البنية التحتية لا مصلحة المشروع. وحين تخفض منصّةٌ الحدَّ الأدنى على هذا النحو، يصير العمل فوقها أكثر طموحًا.

هذا هو الجزء الذي نتحمّس صدقًا لمشاركته، لأننا نظنّه يفتح أبوابًا. مع ⁨NextPDF⁩ على ⁨Cloudflare⁩، يحتفظ تطبيق ⁨PHP⁩ لديك بمحتوى ⁨HTML⁩، بينما يحتفظ ⁨Cloudflare Worker⁩ بالمتصفّح بلا واجهة: يرسل الجسر الوسوم إلى الخارج ويستعيد بايتات ⁨PDF⁩ مُعروضة، فلا حاجة إطلاقًا لتشغيل أي ⁨Chromium⁩ بلا واجهة داخل عملية ⁨PHP⁩ لديك. ومن هناك يمكنك أرشفة الملفات المُولَّدة إلى ⁨R2⁩ وإعادة عناوين ⁨URL⁩ موقَّعة، وضبط طلبات واجهة البرمجة الواردة عند مستوى الحزمة قبل أن تبلغ ⁨worker⁩ لديك أبدًا.

إنها حزمة صغيرة تؤدّي عملًا مركَّزًا على أكمل وجه، وقد بنيناها بعناية. لكنّ السبب الذي جعلنا لا نطيق صبرًا حتى نضعها بين يديك ليس الشِّفرة — بل السؤال الذي يقف خلفها: حين يلتقي محرّك ⁨PDF⁩ بهذه القدرة بمنصّةٍ بهذه القدرة، فما الأشياء الأعمق والأوسع والأكثر إثارة التي يبنيها الناس؟ لا نظنّ أننا تصوّرناها كلّها. وهذا هو المقصد تحديدًا. ابدأ من ⁨نظرة عامة⁩ أو ⁨البدء السريع⁩ وانظر أين يقودك ذلك.

إرسال محتوى ⁨HTML⁩ خارج عمليتك ليُعرض في مكان آخر هو حدُّ ثقة، وقد عاملناه على هذا الأساس. يتحقّق الجسر من الوجهة المسموح للطلب بالذهاب إليها قبل أن يرسل أيّ شيء، على نهج إرشادات ⁨OWASP⁩ بشأن تزوير الطلبات من جانب الخادم، وتستطيع طبقته الناقلة أن تثبّت المفتاح العام المحدّد الذي تتوقّع رؤيته (⁨RFC 7469⁩). أما التفاصيل — التحقق من عنوان ⁨URL⁩، وحدود الحجم، والتثبيت، وضوابط ⁨R2⁩ — فتجدها في ⁨الأمان والتشغيل⁩.

بكل بساطة إذًا: شكرًا. طبقةٌ مجانيةٌ سخيّة ومنصّةٌ يُعتمَد عليها يسّرتا علينا أن نُبقي ⁨NextPDF⁩ مفتوحًا، ويسّرتا على المطوّرين الذين يقرؤون هذا أن يجرّبوا شيئًا طموحًا دون أن تحسمه الفاتورة أوّلًا.

وموقع التوثيق هذا نفسه يُقدَّم عبر ⁨Cloudflare⁩ — فإن كنت تقرؤه الآن، فأنت ترى ذلك ماثلًا في الواقع.


⁨Cloudflare⁩، وأسماء المنتجات المرتبطة بها مثل ⁨Cloudflare Workers⁩ و⁨R2⁩، هي علاماتٌ تجاريةٌ مملوكة لشركة ⁨Cloudflare, Inc.⁩، ومستخدَمةٌ هنا فقط لوصف كيفية تكامل ⁨NextPDF⁩ مع المنصّة. و⁨NextPDF⁩ مشروعٌ مستقلّ لا تربطه أيّ علاقة مؤسسية بشركة ⁨Cloudflare, Inc.⁩، وهو غير معتمَد أو مُموَّل من ⁨Cloudflare⁩.