Използвайте 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]

Този ред ще отнеме всеки файл, поискан от стария ви домейн, и ще го добави (със същото име) към URL адреса на новия ви домейн. Например http://www.olddomain.com/filename ще бъде пренасочен към http://www.newdomain.com/filename. R = 301 казва на сървъра, че пренасочването е постоянно.

Това решение е идеално, ако сте взели целия си сайт и сте го преместили непокътнати в нов домейн. Но това не се случва много често. По-честият сценарий е, че вашият нов домейн има нови файлове и директории. Но не искате да губите клиентите, които си спомнят стария домейн и файлове. Така че, трябва да настроите своя mod_rewrite да пренасочва всички стари файлове към новия домейн:

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

Както и при предишното правило, R = 301 прави това 301 пренасочване. И L казва на сървъра, че това е последното правило.

След като настроите правилото за презапис в файла htaccess, новият ви уебсайт ще получи всички показвания на страници от стария URL адрес.