أنواع المسارات
كلاً من المسار المطلق Absolute Path والمسار النسبي Relative Path هو طريقة للتعبير عن مكان ( عنوان ) ملف, أو مجلد , أو صفحة في نظام التشغيل. وكما نعرف أن المسار يتم تعريفه داخل السمة ( href ), وهناك نوعان من المسارات هما
1 – المسار المطلق ( Absolute Path )
2 – المسار النسبي ( relative path )
والمسار في النهاية هو عنوان, وبشكل مبسط فأنت عندما تقوم بوصفٍ لعنوان منزل ما, فيمكن أن تصف العنوان كاملاً بداية من اسم الدولة ثم المحافظة ثم الحي ثم الشارع ثم رقم المنزل ثم رقم الطابق ثم رقم الشقة, لكن أعتقد أن هذا الوصف يمكن لشخص لا يعيش في نفس الدولة وبالتالي فقد قمت بعمل وصف مطلق لايحتمل التغيير لأنك إذ قمت بإعطاءه العنوان بدون ذكر المحافظة فحتماً لن يصل.
أما إذا كان الشخص من نفس الحي يسأل عن نفس العنوان فيمكنك أن تقول له هو البيت المجاور لقسم الشرطة مباشرةً وبالرغم من أنك لم تذكر كل التفاصيل إلا أنه يستطيع الوصول، فمن لا يعرف قسم الشرطة في نفس الحي؟ . وبهذا فأنت وصفت له العنوان نسبةً إلى قسم الشرطة.
هكذا المسارات المطلقة والنسبية , فالمطلقة غالباً تستخدم إذا كان العنوان المطلوب خارج الموقع وينصح عدم استخدامها مع الروابط الداخلية للموقع حتى لا تضطر لإعادة تعريفها في حال تغيير عنوان الموقع مثلاً. وهنا يأتي دور المسارات النسبية التي تستخدم للإشارة إلى المحتويات التابعة للموقع نفسه.
المسارات المطلقة Absolute Pathsعند تعريف مساراً مطلقاً يجب أن يتم تعريفه على أن يكون مطابقاً لهذه الخصائص :
1 – يجب أن يحتوي على بروتوكول النقل مثل( //:http )
2 – يجب أن يحتوي على اسم الدومين ( Domain Name ) مثل ( prosentra.com )
3 – إذا كان عنواناً لملف فيجب أن يحتوي على اسم الملف وليكن ( page.html )
فيكون المسار المطلق لهذا الملف هكذا
<a href="https://makiomar.com/page.html">My Page</a> المسارات النسبية Relative Pathsتستخدم المسارات النسبية عند الإشارة لعنوان ما داخل الموقع نسبة للمكان الذي يتم الإشارة لهذا العنوان منه. وهناك ثلاثة أنواع للمسارات النسبية :
المسار النسبي للمجلد الحالي نفسهيتم تعريف المسار نسبة إلى المجلد الحالي باستخدام ( /. )، ولاحظ وجود النقطة ( . )
كما يظهر في الصورة السابقة ، نتخيل أن لدينا بناء من المجلدات والملفات يتكون من:
1 – مجلد اسمه Parent
2- مجلد داخل المجلد Parent اسمه Child
3 – المجلد Child يحتوي على ملف Myfile.html وملف صورة Myimage.jpg
فإذا كنت تريد إضافة رابط لملف الصورة ( Myimage.jpg ) داخل ملف ( Myfile.html ) الذي يقع في نفس مجلد الصورة ( ألا وهو المجلد الحالي ) , فيتم اضافة رابط الصورة بهذا الشكل
<img alt="" src="./Myimage.jpg"/> المسار النسبي للمجلد للسابقيتم تعريف المسار النسبي للمجلد الذي يسبق المجلد الحالي عن طريق إضافة ( /.. ). ويسمى المستوى الأول وكلما نصعد بالمستوى نضيف (/..)
كما يظهر في الصورة السابقة ، نتخيل أن لدينا بناء من المجلدات والملفات يتكون من:
1 – مجلد اسمه Parent يحتوي على ملف صورة Myimage.jpg
2- مجلد داخل المجلد Parent اسمه Child
3 – المجلد Child يحتوي على ملف Myfile.html
فإذا أردت إضافة رابط لملف الصورة ( Myimage.jpg ) داخل ملف ( Myfile.html ) فيجب أن تخرج خطوة لأعلى المجلد Child حتي تستطيع الوصول للصورة , وبالتالي يكون الرابط النسبي للصورة في هذه الحالة هكذا
<img alt="" src="../Myimage.jpg"/> المسار النسبي لجذر الموقعإذا أردت إضافة رابط لملف يقع مباشرة في جذر الموقع ( Web root ), فيجب استخدام ( / ) فقط . حيث يتم استبدالها مباشرة برابط الموقع ( http://www.website.com ) .
فإذا أردت إضافة رابط للصورة ( Myimage.jpg ) الموجودة مباشرةً في جذر الموقع, داخل الملف ( Myfile.html ) الموجود داخل مجلد Child فيمكن إضافة رابط نسبي لجذر الموقع ( root-relative ) فيكون شكل الرابط للصورة هكذا
<img alt="" src="/Myimage.jpg"/>ويمكننا تلخيص كل ماسبق بالنظر للصورة التالية