- Disclaimer!
+ On this github only the project is final
! Project research, documentation and other supporting documents are work in progress
! -> readme.md and dir _readme_files
42_webserv
خادم HTTP بسيط مصنوع من الصفر وصف المشروع
ميزات هذا webserv
- برمجة Sockets: الاتصالات الأساسية للخادم العميل (باستخدام <sys/socket.h> lib)
- برمجة مآخذ التوصيل: IO Multiplexing مع Epoll Suite ، Sockets غير محطمة
- بنية خادم الويب: استنادًا إلى بنية NGINX (عملية العامل) -> بنية بيانات الخادم ، بنية بيانات التكوين
- بنية خادم الويب: عامل واحد (عملية واحدة) يتعامل مع جميع الاتصالات باستخدام Epoll ،
- ملفات التكوين: مستوحاة من ملف تكوين NGINX ، راجع تفاصيل التوجيهات أدناه
- توجيهات التكوين: انظر "./_webserv/configuration_files/readme.md"
- بروتوكول HTTP: 1.1
- أساليب HTTP: GET ، POST ، DELETE
- HTTP إعادة التوجيه
- رموز الخطأ http: انظر ".
- تحميل الملف:
- تنزيل الملف:
- نوع البيانات المعالجة: عادي/نص ، ثنائي
- ترميز مكثف
- محتوى ديناميكي يتم التعامل معه مع CGI و CGI Scripts في Python و Perl
- يتم تعيين أجهزة ضبط الوقت على 60 ثانية
- نصوص HTML ، CSS
- يستخدم كائنات الدفق بدلاً من واصفات الملفات لمعظم عملية القراءة/الكتابة باستثناء المقابس
- إدارة الأخطاء ، التسريبات ، الحصار
المضيف ، الاستماع ، server_name ، الموقع ، الطريقة ، الجذر ، الفهرس ، AutoIndex ، body_size ، error_page ، return ، exec_cgi ، extension_cgi)
محتوى هذا github
_webserv
يحتوي هذا المجلد على النسخة النهائية والكاملة من مواقع الويب الخاصة بنا ، ودفعها والتحقق من صحتها 18/07/23.
./webserv_*
نحن نهدف إلى وضع اللمسات الأخيرة على المستندات التالية في الأسابيع المقبلة ، لا يزالون يعملون حاليًا:
- ./webserv_dictionnary.md
- ./webserv_research.pdf
- ./webserv_flowchart.pdf
- ./webserv_correction_prep.md
- ./_webserv/configuration_files/readme.md
WIP Research متاح على: https://docs.google.com/document/d/1i5g1xghdpuf_c7df9sp-edej2bdzipvbjh13hlpty0w/edit؟usp=sharing إخلاء: هذا كان وثيقة البحث لدينا خلال المشروع وقد تم الحصول عليها.
كيفية استخدام هذا webserv
..TBD
الأداء الافتراضي لخادم الويب الخاص بنا
يوجد ملف التكوين الافتراضي في configuration_files/default.conf .
الجذر دائمًا في var/www .
يحتوي هذا المجلد على جميع الملفات الثابتة التي يمكن لخادم الويب الخاص بنا العودة إلى العميل (HTML و CSS والصور وحتى ملفات JavaScript!).
تقع صفحة الفهرس في /html/landing_page.html .
... TBC