View Full Version : سوال: کمک درباره RewriteRule در .htaccess
moontoise
جمعه 25 دی 1388, 12:28 عصر
سلام
ببخشید, من می خوام از دست این query و این علامت سوال و... راحت بشم...
تصمیم گرفتم از .htaccess استفاده کنم...
حالا من یه مشکل دارم...
مثلا Get ها در query من بصورت نورمال این شکلی هست:
www.domain.com/index.php?A=XXX&B=YYY&C=ZZZZ...
حالا می خوام با .htaccess یه جوری این رو به این شکل در بیارم:
www.domain.com/XXX?B=YYY&C=ZZZ...
من یه چیزایی تو نت پیدا کردم, اما همشون اینطوری کار می کردن:
www.domain.com/XXX/YYY/ZZZZ
حالا خواهش می کنم کمکم کنید, ممنون...
nextplus
جمعه 25 دی 1388, 13:14 عصر
اين كاري كه شما ميخواهي انجام بدي عملا دوباره با query string ميشه و زياد جالب نيست
اما به هر صورت جوابش اين ميشه
Options +FollowSymlinks
RewriteEngine on
RewriteRule XXX?^(.*) index.php?A=XXX&$1 [nc]
nextplus
جمعه 25 دی 1388, 13:58 عصر
البته اگه بخوای قسمت XXX هم متغیر باشه باید کدتو بصورت زیر بنویسی
RewriteRule ^(.*)?^(.*) index.php?A=$1&$2 [nc]
moontoise
جمعه 25 دی 1388, 14:57 عصر
خیلی ممنون از راهنماییت...
اما یه مشکل...
من کد رو به اینصورت استفاده کردم:
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteRule main?^(.*) index.php?group=main&$1 [nc]
</IfModule>
بعد این آدرس رو درخواست کردم:
http://127.0.0.1/PORTAL/main?A=XXXاما مشکل زیر پیش اومد:
Not Found
The requested URL /PORTAL/main was not found on this server.
Apache/1.3.33 Server at 127.0.0.1 Port 80
حالا چی کار باید کنم؟ ممنون....
moontoise
جمعه 25 دی 1388, 16:29 عصر
ببخشید, ارسال پیام خصوصی من غیر فعاله...
جوابتون رو اینجا می دم:
من کد رو درست استفاده کردم...
حتی وقتی کد رو به اینصورت استفاده می کنم:
RewriteRule ^(.*)?^(.*) index.php?group=$1&$2 [nc]
بازم اخطار می ده...
نمیدونم چرا اینطوری می شه.....
nextplus
جمعه 25 دی 1388, 17:49 عصر
دوست عزیز از این روش هم میتونی استفاده کنی که قبل از تعریف نام جدید یکسری مقادیر پیش فرض هم براش در نظر بگیری .
RewriteEngine on
RewriteRule ^main main?group=main [QSA]
RewriteRule ^main index.php [nc]
مطمئنا این مشکلت رو حل میکنه.
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.