ملاحظة : تم استبدال هذا المشروع بميناء Golang:
هذه خدمة بسيطة تشبه Pastebin والتي تتيح للمستخدم إرسال نص تم تنسيقه في Markdown ، ومشاركة HTML الناتجة.
يقوم المستخدم بتحميل Markdown وكل من HTML المقدمة و Markdown الأصلي متاحين.
سيتمكن المستخدم من حذف المحتوى بعد التحميل ، إذا رغبوا في ذلك.
تستخدم الخدمة redis من أجل الثبات ، لكنني منفتح على فكرة استخدام نظام الملفات بدلاً من ذلك إذا كان هناك تفضيل.
بالإضافة إلى redis الاستماع إلى المضيف المحلي ، ستحتاج إلى وحدات Perl التالية:
:emojis: الدعميجب أن يكون تثبيتها على مضيف Debian GNU/Linux بسيطًا مثل:
$ apt-get install libossp-uuid-perl libjson-perl libhtml-template-perl
libmath-base36-perl libredis-perl libtext-multimarkdown-perl
perl perl-modules libcgi-application-perl libcgi-session-perl
libhtml-parser-perl
في الماضي ، استخدمنا عددًا صحيحًا واحد لتخزين جميع التقديمات ، والتي تم ترميزها في الأساس 36 للإيجاز.
لقد تحولنا الآن إلى استخدام UUIDs ، مما يعني أن عناوين URL أطول ولكن لا يمكن للمهاجم عن بُعد أن يعتنق القائمة الكاملة للمستندات التي تم تحميلها.
كان من الممكن خلط كلا المخططين إلى أجل غير مسمى ، والسماح للمستخدم بالاختيار بين "Normal" و "Secure" ، لكنني أفضل إزالة مربع الاختيار/combobox والحفاظ على الواجهة بسيطة.
يجب أن يكون النشر واضحًا ومباشرًا إذا كنت على دراية بتطبيقات CGI المستندة إلى Perl.
يوجد ملف عينة من APACH2 المضيف الافتراضي المقدم ، والذي يوثق إعادة كتابة المطلوبة لجعل التطبيق يعمل بعناوين URL النظيفة.
بالإضافة إلى ذلك ، هناك dockerfile المتوفرة ، والتي تتيح لك بناء حاوية بسهولة مع نسخة من رمز المشروع داخله. يمكن بعد ذلك إطلاق هذه الحاوية لمنح نفسك مثيلًا محليًا للتطبيق في بيئة معزولة.
تتوفر حاوية مسبقة من فهرس Docker: