سوال در مورد تنظم htaccess

sabasoft

Member
سلام دوستان
من می خوام htaccess رو به گونهای تنظیم کنم که دو متغیر رو گرفته و به صورت زیر به فایل مورد نظر بفرسته:
کد:
http://test/item/12
درخواستی رو به صورت زیر بفرسته
کد:
http://test/index.php?do=item&did=12
خودم یه چیزی نوشتم ، ولی برام مشکل ساز شد
کد:
RewriteRule ^([0-9a-zA-Z]+)/([0-9a-zA-Z]+) index.php?do=$1&did=$2 [L]
مشکلی هم که برام پیش اومد این بود که مثلا برای درخواست یک فایل واقعی مثلا در آدرس:
کد:
http://test/images/icons/1.gif
با مشکل مواجه می شدم ، چون اونجا تنظیم شده بود که همچنین آدرسی رو به index.php بفرسته.

شما چه پیشنهادی می دید برای تنظیمات این فایل؟

پیشاپیش از همه متشکرم :rose:
 

msnasiri

Member
بیا خط قبلش بگو اگه مثلاً /images نبود!
که اگه این آدرس باشه که دیگه خط بعد نمی ره چک کنه
 

sabasoft

Member
بیا خط قبلش بگو اگه مثلاً /images نبود!
که اگه این آدرس باشه که دیگه خط بعد نمی ره چک کنه
منظورتون رو دقیق نفهمیدم
اگه منظورتون اینه که من فایلهام رو بیارم و توی مثلا images جمع کنم ، نه من همچنین کاری نمی کنم ، چون شاید لازم شد - که الان هم لازمه - و اینجوری دوباره در آینده مشکل ساز میشه
 

sabasoft

Member
مثلا میتونی برای آدرس دهی های اینجوری اول آدرست یه چیزی تعریف کنی مثلا بزاری seo یا fa .
اینجوری مشکلت حل میشه
به اینصورتی که شما می فرمایید ، مشکل حل میشه ولی راهی نیست که بدون این کار بشه کاری کرد؟
 

sabasoft

Member
من خیلی دلم می خواست مثل وردپرس بتونم کاری کنم ولی ظاهرا اون خیلی پیچیده اش کرده...
 
آخرین ویرایش:

zoghal

Active Member
خوب شما می خواهید درخواست رو اینجوری بفرسی، به نظرم بهترین راه اینه که برای هر کدام از درخواست ها که به صورت زیر هستند یک خط شرط در htaccess قرار بدی.
به نظرم از نظر امنیت خیلی بالا میره
PHP:
http://test/item/12
اگر لینک بالا رو بخوای شرطی کنی به این صورت میشه

PHP:
RewriteRule ^test/([0-9a-zA-Z]+) index.php?do=test&did=$2 [L]
البته این راه برای این هست که تعداد این پارامتر های اولت محدود باشه

امید وارم استادان بیان اگر عیبی وارد هست عیب این راه من رو بگیرند
 

sabasoft

Member
خوب شما می خواهید درخواست رو اینجوری بفرسی، به نظرم بهترین راه اینه که برای هر کدام از درخواست ها که به صورت زیر هستند یک خط شرط در htaccess قرار بدی.
به نظرم از نظر امنیت خیلی بالا میره
PHP:
http://test/item/12
اگر لینک بالا رو بخوای شرطی کنی به این صورت میشه

PHP:
RewriteRule ^test/([0-9a-zA-Z]+) index.php?do=test&did=$2 [L]
البته این راه برای این هست که تعداد این پارامتر های اولت محدود باشه

امید وارم استادان بیان اگر عیبی وارد هست عیب این راه من رو بگیرند

دوست من
منظورم از http://test همون دامین هست
بعد فکر کنم کدی که فرمودید هم مشکل داشته باشه ، چون برای do مقدار ثابت شد...!
 

sabasoft

Member
دوست عزیز
شما که کد خودمو برام نوشتید :)

مشکل چیز دیگه ای هست , من می خوام که این کد طوری نوشته بشه که برای دسترسی به پوشه های واقعی به مشکل نخورم
 

firebird

Member
دوست عزیز
شما که کد خودمو برام نوشتید :)

مشکل چیز دیگه ای هست , من می خوام که این کد طوری نوشته بشه که برای دسترسی به پوشه های واقعی به مشکل نخورم
دوست عزیز، اگر دقت میکردی متوجه تفاوت میشدی.
 
من یه سری کامل آموزش ها و امکانات htaccess رو در اینجا آووردم. آموزش ها تمام و کمال از خودمه و از بسیاری از سایت های مرجع Apahce استفاده شده و همچنین تجربیات خودم. از اونجا که سعی کردم کاملا صریح توضیح بدم دیگه توضیحی در اینجا نمیارم. آموزش هاش هم تقریبا به نصف رسیده و htaccess رو کاملا توضیح میده. امیدوارم بدردتون بخوره ...

موفق باشید/.
 

sabasoft

Member
جناب saeed-magicboy ممنون از لینک و آموزشتون ، ولی باز هم می گم ، مشکل من این نیست ، مشکل چیز دیگه ایه :(
 

جدیدترین ارسال ها

بالا