گیک فارسی

نوشته های یک گیک فارسی از فعالیت ها ،‌ علاقه مندی ها و نقد هایش

انتقال (Redirect) دامنه های فرعی به اصلی

نویسنده:
10 آوریل 15

اگه طراح وب باشید به احتمال زیاد به شرایطی برخورد کردین که شما یا مشتری پیشنهاد میدین هم دامنه ir و هم دامنه com و در شرایط حادتری چند دامنه مرتبط یا شبیه دامنه اصلی را ثبت کنید. قطعاً index شدن یک محتوا در چند دامنه برای سئو سایت مناسب نیست و دامنه های فرعی بایستی به دامنه های اصلی انتقال پیدا کنند.

بدترین اتفاق مخصوصاً در مورد دامنه های ir این هست که برای redirect از طریق ثبت کننده دامنه باید پول اضافی بدین و حتی اگه ثبت کننده شما انتقال را براتون انجام بده معمولاً فقط نام مثلاً domain1.com به domain.com منتقل میشه ، حالا اگه شما صفحه about-us به نشانی domain.com/about-us داشته باشین و کاربری صفحه domain1.com/about-us را بزنه به صفحه index دامنه domain.com انتقال پیدا میکنه.

حالا برای اینکه هم هزینه اضافی نکنیم و هم هر صفحه‌ای با هر مسیری که زده میشه به دامنه اصلی و همون صفحه انتقال داده بشه باید از htaccess. استفاده کنیم :

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]

برای توضیح بیشتر :
خط ۱ : Rewrite (بازنویسی) را فعال میکنیم.
خط ۲ : بازنویسی بر پایه ریشه انجام میشه.
خط ۳ : مقدار شرطی برای خط بعد هست و میگه اگه هاست مربوط به URL درخواستی (منظور همون domain.com یا domain1.com بدون www هست) برابر با domain.com نبود (NC یعنی به حروف بزرگ و کوچیک حساس نشو !)
خط ۴: منظور از *. اینه که هر چی بعد از نام هاست در ادامه URL بود را با دامنه domain.com فراخوانی کن ! (L یعنی دیگه شرایط و حالت های بعدی را نمیخواد بررسی کنی و کار را تموم کن. R=301 هم میگه کلاً مسیر را اشتباه اومدی و از این به بعد مسیری که من دارم بهش انتقال میدم را در نظر بگیر که این برای موتور های جستجو معنی داره)

حالا اگه ۱۰۰ تا دامنه را هم توی cpanel روی هاستتون Park کنید.با هر دامنه و مسیری که کاربران توی مرورگرشون بزنن به دامنه domain.com که دامنه اصلی هست و همون مسیر درخواستی منتقل میشوند.