الثلاثاء، 26 مايو 2015

التصنيف:
,

شرح ملف .htaccess و Mod rewrite url

بسم الله الرحمن الرحيم
بإختصار شديد هذه التقنيه تسمح لك بتغير إمتداد الملف الي اي إمتداد ترغب فيه و هي تتم عن طريق ملف htaccess.

  • أولاً إفتح معي المفكره و إكتب الاتي:
                       RewriteEngine on
هذا الكود يقوم بتشغيل الخاصيه في موقعك لتعد ذلك نقوم بتعريف السيرفر على  الاسلوب الذي يتعامل به مع الملفات عن طريق وضع الاتي

                      RewriteRule ^New Url$ old Url

أولاً نضع الاتي

                                   RewriteRule

و هذا الكود يدل علي بدأ تبديل الرابط الاول و يتكون هذا السطر من ^ و هذه العلامه تعني بداية الرابط الاول المراد تغيره   و بعد ذلك نضع الرابط الاول الجديد المراد التغيير إليه و بعد ذلك أضفنا   $ و هي تعني إنتهاء الجزء الخاص بالملف المراد التغيير إليه و بعد ذلك قمنا بوضع اسم الملف القديم   فلنأخذ مثال عملي.
أول شيئ انا عندي ملف موقعي الرئيسي اللي هو index.php و عايز أخليه   index.htm علشان محركات البحث يبقي افتح ملف مفكرة و أكتب الاتي :

RewriteEngine on
RewriteRule ^index.htm$ index.php


و بعد كده أحفظه علي إمتداد htaccess.  و بعد كده أطلب من المتصفح الملف بإمتداده الجديد

شرح ما بداخل الملف عن قرب RewriteEngine on : لتفعيل خاصية المود ري رايت RewriteRule : و هي تعني بدأ التغير علي الرابط الاول :

^ : تعني بدأ الجزء الخاص بإمتداد الملف الجديد
. : و هي تعني . و تم وضع قبلها حتي يتم معاملتها علي انها نقطة عاديه
$ : نهاية الجزء الخاص بالملف الجديد

  • في هذا الجزء ستنطرق في كيفية تحويل روابط صفحه متعددة الصفحات مثلاً مثل هذه الصفحه
                                               index?action=cat&id=17                   
 فهذه الصفحه بطبيعة الحل متعددة الصفحات حيث ال id يمثل قيمة كل صفحه سيتم إستدعائها

أولاً افتح ملف htaccess. و قوم بتعريف الاساسيات كما فعلنا في الجزء الاول من الدرس


RewriteEngine on
RewriteRule ^index(.*).htm$ index.php?action=cat&id=$1


أولاً قمنا الرابط الجديد و هو index(.*).htm بعمل الاتي و هو الجديد في الدرس بوضع (.*)حيث سيتم تضمين ما يسويه الرابط التاتي هنا بوضع هذه العلامه في الرابط الثاني

                                 index.php?action=cat&id=$1 

فقد قمنا بكتابة رقم واحد و علامة $ حيث رقم واحد يدل علي (.*) الاولي فلو كان مثلاً الرابط القديم

                                  index.php?action=cat&id=84

سيكون الجديد  index84.html

طيب ماذا إذا كانت الصفحه تضمن اكتر من رقم كرقم القسم و رقم تصويت عليه مثلاً

cat.php?catid=4&vote=7

سيكون التحويل كالاتي

RewriteEngine on

RewriteRule ^cat(.*)-(.*).htm$ cat.php?catid=$1&vote=$2


حيث كان أضافنا

(.*)
لتعبر عن الرقم الثاني

و اضفنا في الرابط القديم

$2

ليعبر عنا

ليصبح الرابط القديم

cat.php?catid=4&vote=7

و الجديد
  cat4-7.htm

اذا كنت تريد عمل ملف htaccess   باحترافية عالية لضبط اعدادات seo  في موقع قم بطلب الخدمة من خلال الوصلة التالية





0 التعليقات: