سلام دوست من این دوتا با هم از نظر کارایی فرق نمیکنن ولی اگر کمی در مورد موتور های جستجو بخونید میبینید که
localhost/post/1
بهتره چون با موتور های جستجو سازه گاره ولی برای این کار باید فایل .httacsses رو تو سرور دستکاری کنید البته من یه کد که از سایت ایران پی اچ پی گرفتم هم برات میزارم تقریبا همین کار رو انجام میده ولی خوب اون انعطاف امنیت و اعتماد روش اول رو نداره
من این جا فقط کد رو نمیزارم عینا توضیحات سایت ایران php رو برات میزارم بخون حالشو ببر
---------------------------------------------------------
حتما با كلمه clean url در php آشنا هستيد . اما براي همه دوستان يك توصيح سريع راجع به اون مي دم :
سيستمي كه يك url شبيه به اين رو :
http://www.sepultura.com/contact.php?name=max&lname=cavalera
به اين صورت در مياره :
http://www.sepultura.com/contact/max/cavalera
حالا يه چيزي شبيه به همون با تفاوتهاي جزيي .
براي اين كار هم كه حتما همون طور كه چندي پيش linmiss تو وبلاگش توضيح داده بود مي دونيد بايد دست به دامان apache و htaccess بشويم .
چند وقت پيش نسخه دموي كتاب simplephp نوشته آقاي robert plank رو دانلود كرده بودم اما هيچ وقت نخونده بودم تا اينكه اتفاقي به صفحه 6 كتاب رسيدم كه روش ساختن يك حالت ساده clean url رو بدون استفاده از هيچ چيز توضيح داده بود و حتي نوشته بود كه هر جاي دنيا url شبيه به go.php/etc ديديد بدونيد كه اون اسكريپت منه .
گفتم شايد بعضي از دوستان هم مثل من چگونگي اين اسكريپت جالب باشه .
در ادامه اسكريپت كوتاه و ساده روبرت عزيز رو ميارم :
PHP:
<?php
$myvars = explode("/",$_SERVER['REQUEST_URI']);
for ($i=0;$i<count($myvars);$i++){
$holder = explode("=",$myvars[$i]);
${$holder[0]} = $holder[1];
}
echo "name= $f and lname = $l";
?>
در اين صورت به جاي :
http://www.sepultura.com/contact.php?n=max&l=cavalera
مي تونيم از اين استفاده كنيم :
http://www.sepultura.com/contact.php/n=max/lname=cavalera
البته هنوز اكستنشن فايل مشخص هست و اسم متغير .
توضيحات :
دليل استفاده از clean url بهينه سازي سايت براي موتور هاي جستجو و حتي امنيت هست .