فهرس دليل خادم الويب
المظهر
- عندما يطلب عميل HTTP (مستعرض ويب بشكل عام ) عنوان URL يشير إلى بنية دليل بدلاً من صفحة ويب فعلية داخل الدليل ، فسيقوم خادم الويب عمومًا بتقديم صفحة افتراضية ، والتي يشار إليها غالبًا باسم رئيسي أو «فهرس» صفحة.
- اسم ملف شاسع لمثل هذه الصفحة هو
index.html
، ولكن معظم خوادم HTTP الحديثة تقدم قائمة قابلة للتكوين بأسماء الملفات التي يمكن للخادم استخدامها كفهرس. إذا تم تكوين ملقم لدعم البرامج النصية من جانب الخادم ، فإن القائمة تتضمن عادة إدخالات السماح محتوى ديناميكي لاستخدامها صفحة الفهرس (على سبيل المثالindex. php
،index. shtml
،index. jsp
،default. asp
) على الرغم من أنه قد يكون أكثر ملاءمة لتحديد إخراج HTML (index.لغة توصيف النص الفائق.بي إتش بي
أوindex.لغة توصيف النص الفائق.aspx
) ، حيث لا ينبغي اعتبار ذلك أمرًا مفروغًا منه. مثال على ذلك هو خادم الويب الشهير مفتوح المصدر Apache ، حيث يتم التحكم في قائمة أسماء الملفات بواسطةDirectoryIndex
[1] في ملف تكوين الخادم الرئيسي أو في ملف التكوين لهذا الدليل . من الممكن الاستغناء عن امتدادات الملفات على الإطلاق ، وأن تكون محايدًا لطرق تسليم المحتوى ، وتعيين الخادم لاختيار أفضل ملف تلقائيًا من خلال تفاوض المحتوى .
- إذا كان الخادم غير قادر على العثور على ملف بأي من الأسماء المدرجة في التكوين الخاص به ، فقد يقوم إما بإرجاع خطأ (بشكل عام 404 غير موجود ) أو إنشاء صفحة فهرس خاصة به تسرد الملفات الموجودة في الدليل. قد يُرجع أيضًا 403 قائمة فهرس محظورة . عادةً ما يكون هذا الخيار قابلاً للتكوين أيضًا.
تاريخ
[عدل]- تم دعم مخطط حيث يخدم خادم الويب ملفًا افتراضيًا على أساس كل دليل فرعي في وقت مبكر مثل NCSA HTTPd 0.3beta (22 أبريل 1993) ، [2] والذي يتم
index.html
في الدليل.[3] تم اعتماد هذا المخطط بعد ذلك بواسطة CERN HTTPd منذ 2.17 بيتا على الأقل (5 أبريل 1994) ، والذي يدعم بشكل افتراضيWelcome.html
وwelcome.html
index.html
نشأ عن NCSA.[4]
- تدعم خوادم الويب اللاحقة نظام الملفات الافتراضي هذا بشكل أو بآخر ؛
index.html
للتهيئة ، حيث يكون index.html أحد أسماء الملفات الافتراضية.[5][6][7]
التنفيذ
[عدل]- في بعض الحالات ، يمكن أن تكون الصفحة الرئيسية لموقع ويب قائمة بخيارات اللغة للمواقع الكبيرة التي تستخدم الاستهداف الجغرافي . من الممكن أيضًا تجنب هذه الخطوة ، على سبيل المثال باستخدام تفاوض المحتوى .
- في الحالات التي لا يوجد فيها
index.html
داخل دليل معين ، قد يتم تكوين خادم الويب لتقديم قائمة تم إنشاؤها تلقائيًا بالملفات داخل الدليل بدلاً من ذلك. مع خادم الويب Apache ، على سبيل المثال ، يتم توفير هذا السلوك بواسطة الوحدة النمطية mod_autoindex [8] ويتم التحكم فيه من خلال التوجيهاتOptions +Indexes
[9] في ملفات تكوين خادم الويب.
- استخدام أسماء نطاقات مختلفة و/أو حواسيب لفصل الملفات الكبيرة من الصغيرة والمتوسطة الحجم، والفكرة هي أن تكون قادرة تماما على تخزين الملفات الصغيرة والمتوسطة الحجم بكفاءة وذلك لتقديم خدمة كبيرة أو ضخمة (أكثر من 10—1000 ميغابايت) وذلك باستخدام إعدادات مختلفة.
- استخدام العديد من برامج خوادم الشبكة في حاسوب واحد، وكل واحد منها يتجه إلى بطاقة الشبكة الخاصة به و عنوان بروتوكول الإنترنت (IP address).
- استخدام العديد من حواسيب خوادم الشبكة والتي يتم تجميعها معا بحيث يتم التصرف بها والنظر إليها وكأنها خادم شبكة كبير (واحد).
- إضافة مزيد من الموارد المعدنية (ذاكرة الوصول العشوائي (RAM)، والأقراص) على كل حاسوب.
- ضبط نظام التشغيل للأجهزة وقدراتها واستخداماتها.
- استخدام العديد من برامج الحاسب الأكثر كفاءة لخوادم الشبكة، إلخ.
- استخدام الحلول الأخرى، خصوصا إذا كان المحتوى الديناميكي هو المعني.
المراجع
[عدل]- ^ "mod_dir - Apache HTTP Server". httpd.apache.org. مؤرشف من الأصل في 2021-03-22. اطلع عليه بتاريخ 2014-05-30.
- ^ "WWW-Talk Apr-Jun 1993: NCSA httpd version 0.3". 1997.webhistory.org. مؤرشف من الأصل في 2020-08-12.
- ^ "NCSA HTTPd DirectoryIndex". 31 يناير 2009. مؤرشف من الأصل في 2009-01-31.
- ^ "Change History of W3C httpd". 5 يونيو 1997. مؤرشف من الأصل في 1997-06-05.
- ^ "mod_dir - Apache HTTP Server Version 2.4 § DirectoryIndex Directive". httpd.apache.org. مؤرشف من الأصل في 2020-11-12. اطلع عليه بتاريخ 2021-01-13.
- ^ "NGINX Docs | Serving Static Content". docs.nginx.com. مؤرشف من الأصل في 2020-11-11. اطلع عليه بتاريخ 2021-01-13.
- ^ "Default Document <defaultDocument> | Microsoft Docs". docs.microsoft.com. مؤرشف من الأصل في 2020-12-08. اطلع عليه بتاريخ 2021-01-13.
- ^ "mod_autoindex - Apache HTTP Server Version 2.4". httpd.apache.org. مؤرشف من الأصل في 2021-03-20. اطلع عليه بتاريخ 2021-01-13.
- ^ "core - Apache HTTP Server Version 2.4 § Options Directive". httpd.apache.org. مؤرشف من الأصل في 2021-04-17. اطلع عليه بتاريخ 2021-01-13.