از mod_rewrite برای هدایت کل سایت خود استفاده کنید

Htaccess، mod_rewrite و آپاچی

صفحات وب حرکت می کنند این یک واقعیت از توسعه وب است. و اگر شما هوشمند هستید، از 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 خود را تنظیم کنید تا همه فایلهای قدیمی را به دامنه جدید هدایت کنید:

RewriteRule ^. * $ http://newdomain.com/ [R = 301، L]

همانند قانون قبلی، R = 301 باعث تغییر مسیر 301 می شود. و L به سرور می گوید که این آخرین قانون است.

پس از تنظیم پارامتر بازنویسی خود در فایل htaccess، وب سایت جدید شما تمام نمایشهای صفحه را از URL قدیمی دریافت خواهد کرد.