Mod_rewrite ро истифода баред

Htaccess, mod_rewrite, ва Apache

Саҳифаҳои интернет ҳаракат мекунанд. Ин як веб-дизайн аст. Ва агар шумо зеҳнӣ бошед, шумо 301 самтро барои пешгирӣ кардани пӯситаи пайванд истифода мебаред. Аммо агар шумо тамоми вебсайтро интиқол диҳед? Шумо метавонед ба воситаи гузариш ва дастӣ барои ҳар як файл дар сомона нависед. Аммо он метавонад муддати тӯлонӣ гузарад. Хеле хуб аст, ки htaccess ва mod_rewrite истифода баранд, то ки якчанд вариантро бо якчанд вариант кӯчонед.

Чӣ тавр истифодабарии mod_rewrite барои вебсайти шумо равона карда шудааст

  1. Дар решаи веб сервери пешинаи шумо, файлҳои нав .htaccess-ро бо ёрии муҳаррири матн таҳрир кунед ё эҷод кунед.
  2. Иловаи сатр: RewriteEngine ON
  3. Дар илова: RewriteRule ^ (. *) $ Http://newdomain.com/$1 [R = 301, L]

Ин сатр ҳар як файлеро, ки дар домени пештара дархост карда мешавад, мегирад ва онро (бо як парвандаи яквақта) ба суроғаи домени нав ворид кунед. Масалан, http://www.olddomain.com/filename ба http://www.newdomain.com/filename равон карда мешавад. R = 301 ба сервер ишора мекунад, ки тағирот доимӣ аст.

Ин ҳалли комил аст, агар шумо тамоми сомонаи худро гирифтаед ва онро ба домени нав раҳо кунед. Аммо ин бисёр вақт рӯй медиҳад. Сенарияи бештар маъмул аст, ки домени шумо навишти файлҳо ва драйверҳои нав дорад. Аммо шумо намехоҳед, ки мизоҷонеро, ки домени ва файлҳои кӯҳнаро фаромӯш мекунанд, аз даст диҳанд. Пас, шумо бояд mod_rewrite-ро барои тағир додани ҳамаи файлҳои кӯҳна ба домени нав:

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

Тавре ки дар қоидаи қаблӣ, R = 301 ин 301-ро ба назар мегирад. Ва L ба сервер гуфта мешавад, ки ин қоидаҳои охирин аст.

Пас аз он, ки шумо қоидаҳои навсозии шуморо дар файли htaccos насб кардаед, вебсайти нави шумо ҳамаи панели асбобҳо аз URL сола мегирад.