PDA

View Full Version : سوال در مورد آدرس سایت



alimooghashang
پنج شنبه 07 شهریور 1387, 20:44 عصر
سلام
لطفا یکی میشه بگه این سایت ها که ادرسشون اینطور میشه، چیکار میکنن
مثلا:


http://www.mysite.com/2008/07/01/

من فکر نمیکنم برای این کار بیان و فولدر بسازن
مثل همین وردپرس که مطلب جدید میدی
مرسی از راهنمایی تون

Lagon666
پنج شنبه 07 شهریور 1387, 21:25 عصر
این کار با فایل .htaccess در سرور های LINUX انجام میشه.



RewriteEngine on
RewriteRule 2008/07/01 index.php?y=2008&m=07&d=01 [nc]


البته قبلش اطمینان حاصل کنید که RewriteEngine در Apache فعال شده.

alimooghashang
پنج شنبه 07 شهریور 1387, 21:33 عصر
مرسی
میشه یه نمونه کد یا یه مثال چیزی بگی که من با این آی کیوی پایین بفهمم
چطوری میتونم تو سایتم استفاده کنم از این قابلیت

Lagon666
پنج شنبه 07 شهریور 1387, 23:39 عصر
توی هاستت یه فایل با این نام هست. (اگه نبود خودت بساز):

.htaccess

مثلا این کد هارو بریز توش:


RewriteEngine on
RewriteRule 2008/07/01 index.php?y=2008&m=07&d=01 [nc]


این کد باعث میشه که زمانی که کسی به این صفحه میره:

http://www.mysite.com/2008/07/01/

مثل این باشه که به این صفحه رفته:


http://www.mysite.com/index.php?y=2008&m=07&d=01


این روش به ثبت شدن در موتور های جستجو کمک میکنه.

alimooghashang
جمعه 08 شهریور 1387, 00:03 صبح
مرسی
اونوقت چطوری میفهمه که کدوم اسلش مال کدوم متغیره
مثلا چطور میفهمه 2008 ماله y هست
از روی ترتیبش؟

eAmin
جمعه 08 شهریور 1387, 01:36 صبح
سلام.

فکر می کنم فرقی نداشته باشه، شما می تونی فقط بنویسی 2007 اشکالی نداره.

alimooghashang
جمعه 08 شهریور 1387, 01:51 صبح
Lagon666 عزیز
حالا یه سوال
چطوری میشه یه الگوی ثابت برای همه آدرس ها قرار داد
اگر مثلا من 500 لینک داشته باشم که نمیشه همه این لینک ها را در فایل بگنجونم
مرسی

Bahram0110
جمعه 08 شهریور 1387, 10:32 صبح
الگوی ثابت:



RewriteRule ^(.+)/(.+)/(.+) index.php?y=$1&m=$2&d=$3 [nc]

alimooghashang
جمعه 08 شهریور 1387, 14:02 عصر
الگوی ثابت:



RewriteRule ^(.+)/(.+)/(.+) index.php?y=$1&m=$2&d=$3 [nc]


مرسی
میشه بگین دقیقا این علامت ها چیه


^(.+)/(.+)/(.+)

و چیکار میکنه
چون باید بدونم که چیکار میکنه و میخوام که این rule ها را از دیتابیس بخونم و بکار ببرم
پس نیاز دارم یه کم سر در بیارم از این علامت ها
مرسی

Lagon666
جمعه 08 شهریور 1387, 20:06 عصر
ببخشید که دیر جواب میدم،
همون طور که بهرام گفته درسته. ایشون الگوی ثابت این کار رو نوشته.



RewriteRule ^(.+)/(.+)/(.+) index.php?y=$1&m=$2&d=$3 [nc]


رنگ ها جواب سوالتونه.

alimooghashang
شنبه 09 شهریور 1387, 16:58 عصر
مرسی
من این کار را کردم
ولی خوب همیشه درست نیست
مثلا وقتی یه عکس دارم تو شاخه Image اونم یه rule حساب میکنه و عکس را نشون نیمده و redirect میشه
لطفا یه مرجع خوب در این مورد بگین
یا اینکه خودتون راهنمایی کنید
مرسی
در مورد اینکه چطور میشه rule ها را دینامیک کرد هم میشه بگین
مثلا از دیتابیس بخونه و redirect بشه
مرسی

Bahram0110
یک شنبه 10 شهریور 1387, 11:20 صبح
مرسی
من این کار را کردم
ولی خوب همیشه درست نیست
مثلا وقتی یه عکس دارم تو شاخه Image اونم یه rule حساب میکنه و عکس را نشون نیمده و redirect میشه
لطفا یه مرجع خوب در این مورد بگین
یا اینکه خودتون راهنمایی کنید
مرسی
در مورد اینکه چطور میشه rule ها را دینامیک کرد هم میشه بگین
مثلا از دیتابیس بخونه و redirect بشه
مرسی
سلام
اینم راه حل داره
شما اینجوری دستورت رو توی htaccess بنویس :


RewriteRule ^y_(.+)/m_(.+)/d_(.+) index.php?y=$1&m=$2&d=$3 [nc]اینجوری فقط لینک هایی که بطورت y_a/m_b/d_c هستند تبدیل می شن.

alimooghashang
یک شنبه 10 شهریور 1387, 15:02 عصر
مرسی
اقا من سوالم اینه که چطور میشه که رول ها را دینامیک تعریف کرد
مثلا یه خط یا چند خط بنویسی که نخواهی مثلا 500 تا آدرس را rewrite کنی
مثلا یه سری لینک تو دیتابیس داری, اینا را بخونی و با آدرسی که تو دیتابیس برای rewrite ذخیره کردی redirect بشه
منظورم را میرسونم؟
دقیقا منظورم wordpress هست