
نوشته اصلی توسط
talebi1372
سلام .
من اسکریپتی دارم که لینک ها رو به صورت example.com/?a=pagename نشون میده و با تغییر هر صفححه فقط pagename تغییر میکنه .
میخوام بدونم چطور میشه از طریق modrewrite به جای فرمت بالا به صورت example.com/page=pagename لود بشه .
و همچنین خود example.com/?a=pagename به example.com ریدایرکت کنه و قابل دسترسی نباشه .
با تشکر .
page=pagename ؟این هم همچین استاندارد نیست؛
اگه قصد دارید به صورت زیر باشه :
example.com/pagename >> example.com/?a=pagename
از کد زیر استفاده کنید:
کد HTML:
RewriteEngine On
RewriteRule ^([^/]*)$ /?a=$1 [L]
برای ریدایرکت هم بهتره example.com/?a=pagename ریدایرکت کنی به example.com/pagename که از نظر سئو بهتر باشه؛ این کارو با اسکریپتت باید انجام بدی؛ یعنی این که اول پارامتر a و تغییر بده به یه چیز دیگه؛ مثلا b
کد HTML:
RewriteEngine On
RewriteRule ^([^/]*)$ /?b=$1 [L]
حالا تو برنامت یه دستور شرطی بزار اگه پارامتر a پیدا شد ؛ مقدارش ریدایرکت بشه به b :
کد PHP:
if(isset($_GET['a'])){
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: example.com/".$_GET['a']);
}