Mod_rewritedan butun saytni qayta yo'naltirish uchun foydalaning

Hacess, mod_rewrite va Apache

Veb-sahifalar ko'chiriladi. Bu veb-saytlarning rivojlanishi faktidir. Agar siz aqlli bo'lsangiz, siz bog'lanishni to'xtatish uchun 301 ta yo'nalishda foydalanasiz. Lekin butun veb-saytni ko'chirsangiz nima bo'ladi? Sayt ichidagi har bir faylga o'tishingiz va qo'lda har qanday faylga yo'llashingiz mumkin. Ammo bu uzoq vaqt talab qilishi mumkin. Yaxshiyamki, butun bir veb-saytga bir nechta kodli kodlar bilan yo'naltirish uchun htaccess va mod_rewrite-dan foydalanish mumkin.

Mod_rewrite saytini qayta yo'naltirish uchun qanday foydalaniladi

  1. Eski veb-serveringizning ildizida matn tahrirlovchisi yordamida yangi .htaccess faylini tahrirlang yoki yarating.
  2. Chiziqni qo'shing: RewriteEngine ON
  3. Qo'shish: RewriteRule ^ (. *) $ Http://newdomain.com/$1 [R = 301, L]

Ushbu satrda eski domeningizda talab qilingan har bir faylni oladi va uni (domen nomi bilan) yangi domeningiz URL manziliga qo'shing. Masalan, http://www.olddomain.com/filename manzili http://www.newdomain.com/filename manziliga yo'naltiriladi. R = 301 serverga qayta yo'naltirish doimiyligini bildiradi.

Agar siz butun saytni olsangiz va uni yangi domenga o'zgartirgan bo'lsangiz, ushbu hal mukammal hisoblanadi. Lekin bu juda tez sodir bo'lmaydi. Bundan keng tarqalgan senariy sizning yangi domeningiz yangi fayllar va kataloglarga ega bo'lishidir. Ammo eski domen va fayllarni eslab qolgan mijozlarni yo'qotishni istamaysiz. Shunday qilib, eski domenlarni yangi domenga yo'naltirish uchun mod_rewrite-ni o'rnatishingiz kerak:

RewriteRule ^. * $ Http://newdomain.com/ [R = 301, L]

Avvalgi qoidada bo'lgani kabi, R = 301, bu 301 yo'l-yo'riq beradi. Va L serverga bu oxirgi qoidalar haqida gapiradi.

Hujjat faylini qayta yozish qoidasini o'rnatganingizdan so'ng, yangi veb-saytingiz eski URLdan olingan barcha sahifa ko'rinishini oladi.