آموزش کار با Redirects در cpanel

آموزش کار با Redirects در cpanel
آموزش کار با Redirects در cpanel

دوستان عزیز پیشگام وبی امیدوارم که حالتون خوب باشه ، امروز با آموزش کار با Redirects در cpanel خدمتتون هستیم و امیدوارم توضیحاتی که در این مطلب و یا در انتها مطلب که بصورت فیلم قرارداده شده بتونه به شما کمک کنه و هر روز بیشتر پیشرفت کنید.

خوب اصلا این قسمت به چه دردی میخوره کجا بهش نیاز داریم و در کل کاربردش چی هست؟

تصور کنید که مدیر یه وب سایت فعال هستید و خیلی ها روزانه وارد سایتتون میشن و از مطالب وب سایت شما استفاده میکنند و حالا تصمیم گرفتین که آدرس دامنه وب سایتتون رو عوض کنید و کل محتوای سایتتون رو به یه دامنه دیگه منتقل کنیند ، یا این که اصن فکر کنین که بعد یه مدتی از فعالیت وب سایتتون تصمیم گرفتین که آدرس بعضی از صفحات سایتتون رو عوض کنید و بهشون یه نظمو ترتیبی بدید ، حالا مشکل اینجاست که خیلی از کاربرای اینترنت ممکنه آدرس قدیمی یه صفحه از سایت شما رو یاداشت کرده باشند ، تا یه زمانی واردش بشن و ازش استفاده کنن ، و وقتی شما آدرس اون صفحه رو عوض کرده باشید کاربران وقتی میخوان وارد اون صفحه بشن با خطای 404 مواجه میش ، و از اون مهم تر گوگل و سایر موتور های جستجو همه روزه بازدیدکننده ها رو به آدرس قدیمی صفحات سایت شما ارجاع میدن و شما باید بتونین یه جوری به موتور های جستجو و بازدیدکننده ها بفهمونید که آدرس جدید اون صفحه که به دنبالش هستند عوض شده و آدرس جدیدش رو بهشون بگید ، توسط قابلیت redirect تو هاست سی پنل قادر هستین ، یه سری ارجاع دهنده های اتوماتیک تنظیم کنین تا به محض این که کاربر یا موتور های جستجو وارد آدرس url قدیمی اون صفحه از سایتتون شد به صورت خودکار به آدرس جدید اون صفحه هدایت بشه، ریدایرکت یا هدایت آدرس های قدیمی سایت به آدرس جدیدشون، باعث میشه که شما بخش عظیمی از ترافیک وب سایتتون رو از دست ندید.

این قسمت برای تغییر پسورد در سی پنل میباشد که با عنوان Redirects در قسمت domais موجود میباشد.

ابتدا وارد هاستمون داخل سایت پیشگام وب میشویم.

میتوانید از سایت پیشگام وب قسمت سرویس های من ، سرویس مورد نظر را انتخاب کرده و ورود به سی پنل را بزنید تا بصورت اتوماتیک وارد هاستتون بشید و همچنین میتوانید از لینک سایت خودتون ، البته اگر که دی ان اس های ( DNS ) پیشگام وب را درست ست کرده باشید و 24 ساعت گذشته باشد از طریق پورت 2082 و یا 2083 وارد بشید.

فقط نکته ای که هست و باید بهش توجه کنید ، اگر سایت را با http باز میکنید از پورت 2082 و اگر با https باز میکنید از 2083 استفاده کنید ، نمونه لینک در زیر مشخص شده است.

https://www.pishgam-web.ir:2082
https://www.pishgam-web.ir:2083

البته به این نکته توجه داشته باشید که باید جای آدرس سایت ما آدرس سایت خودتان را وارد کنید.

راه آخر جهت لاگین هم در صورتی که دی ان اس ها ( DNS ) را ست نکرده اید یا 24 ساعت از تنظیم آنها نگذشته است و دوست ندارید بطور مثال اطلاعات ناحیه کاربری رو به طراح بدید استفاده از لینک پیشفرض پیشگام وب هست که در زمان خرید هاست برای شما ارسال شده و اگر هم نتونستید پیدا کنید میتوانید تیکت بدهید تا به شما داده شود ، پایین هم میتوانید نمونه لینک رو مشاهده کنید.

http://server13.pishgamweb.net:2082
https://server13.pishgamweb.net:2083

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

از قسمت domains روی گزینه Redirects کلیک کنید.

در این صفحه تنظیمات مربوط به ریداکت را مشاهده میکنید.

در قسمت type نوع ریداکت را مشخص میکنیم.

  • ریدایرکت 301، که اگه این گزینه رو انتخاب کنیم و توسط این گزینه یکی از آدرس های وب سایتمون رو به آدرس دیگه هدایت یا ریدایرکت کنیم، این نوع هدایتگر به گوگل و سایر موتور های جستجو دستور میده که امتیاز و اعتباری که اون صفحه تو موتور های جستجو به مرور زمان کسب کرده رو به صورت کامل به آدرس جدیدی که داریم بهش ریدایرکت میکنیم، برای همیشه منتقل کنه و یه جورایی به موتور های جستجو میفهمونه که آدرس اون صفحه برای همیشه عوض شده.
  • ریدایرکت 302، که اگه این گزینه رو انتخاب کنیم و توسط این گزینه یکی از صفحات سایتمون رو به یه آدرس دیگه ریدایرکت یا هدایت کنیم، این نوع هدایتگر به گوگل و سایر موتور های جستجو میگه که این یه هدایتگر کوتاه مدت هستش و به موتور های جستجو دستور میده که امتیاز کسب شده توسط اون صفحه داخل جستجو گر ها به آدرس جدیدش منتقل نشه و فقط نقش یه هدایت کننده موقتی رو داره.

هیچ گاه نباید این دو نوع ریدایرکت را بجای هم استفاده نمود. اگر صفحه ای از سایت شما برای همیشه حذف می شود، به هیچ عنوان نباید از ریدایرکت ۳۰۲ استفاده کنید. استفاده از ریدایرکت ۳۰۲ سبب می شود که ارزش صفحه ای که حذف شده به صفحه ای که بر روی آن ریدایرکت شده منتقل نگردد و پس از مدتی موتورهای جستجوگر به دلیل آنکه آن صفحه دیگر آنلاین نشده، آن را از دیتابیس شان حذف می کنند و آن صفحه و ارزشی که دارد برای همیشه از بین می رود! در حالی که می توانستید با استفاده از ریدایرکت ۳۰۱ ، بخشی از ارزشش را به یک صفحه دیگر از سایت منتقل کنید.

در قسمت پایین نوع انتقال دامنه مورد نظر را انتخاب میکنیم.

در قسمت ریداکت تو هم ادرس دامنه ای که مقصد ریداکت به حساب می آید را وارد میکنیم.

  • گزینه Only redirect with www. به این معناست که اگه یکی آدرس سایت ما رو فقط با www داخل مرورگر وارد کرد، به این آدرس جدید که هدایتگر داریم براش تنظیم میکنیم منتقل بشه.
  • گزینه Redirect with or without www. به این معناست که اگه یکی آدرس اون صفحه از سایت مارو چه با و چه بی www. وارد کرد به آدرس جدیدش که داریم تنظیم می کنیم، هدایت بشه.
  • گزینه Do Not Redirect www. به این معناست که اگه یکی آدرس اون صفحه از سایت مارو با وارد کرد به آدرس جدیدش که براش ریدایرکت داریم تنظیم میکنیم، هدایت نشه.

و ما هم مطابق تصویر گزینه دوم رو انتخاب می کنیم تا هرکس چه با www. و چه بی www. میخواد وارد اون صفحه از وب سایت ما بشه به آدرس جدیدش هدایت بشه.

Wild Card Redirect در هاست به چه معناست ؟

البته این گزینه بیشتر زمانی کاربرد داره که شما میخواین روت یا شاخه اصلی دامنه وب سایتتون رو به همراه تمام آدرس های وب سایتتون به یه دامنه دیگه ریدایرکت کنین، مثلا این گزینه زمانی کاربرد داره که بخواین آدرس mizbanfatv.ir که شاخه اصلی دامنه هستش رو ریدایرکت کنین به آدرس جدیدش، نه مثلا صفحه mizbanfatv.ir/login رو به آدرس یه صفحه دیگه، کاربرد این گزینه اینه که اگه شما بخواین دامنه mizbanfatv.ir رو مثلا به آدرس Mizbanfa.net هدایت کنید و این گزینه رو تیک دار کنین، از اون به بعد اگه کسی آدرس mizbanfatv.ir/about-us رو هم تو مرورگر وارد کرد به صورت خودکار به آدرس Mizbanfa.net/about-us هدایت میشه و اگه یه زمانی کلا تصمیم داشتین آدرس دامنه وب سایتتون رو عوض کنین، این گزینه به شما کمک میکنه تا نیاز نباشه یکی یکی آدرس های سایتتون رو به آدرس جدیدش هدایت کنین، فقط زمانی این گزینه رو فعال کنین که تمام مسیر های سایت فعلیتون بر روی دامنه جدیدتون هم وجود داشته باشه.

خیلی خب برمیگردیم به صفحه redirect ها داخل هاست سی پنل، ما چون فقط میخوایم یه آدرس رو هدایت کنیم پس گزینه Wild Card Redirect رو تیک دار نمی کنیم و حالا برای نهایی سازی ریدایرکت بر روی دکمه آبی رنگ add از اینجا کلیک می کنیم.

بعد از ورود به فایل منیجر فایل اچ تی اکسس در پابلیک اچ پی ام ال را ویرایش کرده و کد مد نظر که در ادامه انواع ان همراه با توضیحات ارائه شده است قرار داده و روی گزینه ذخیره کلیک میکنیم.

ریدایرکت صفحات سایت به آدرس جدید بعد از تغییر دامنه

تغییر آدرس دامنه سایت به آدرس جدید یک مسئله رایج در محیط وب است. وبمستران بسیاری برای شروع با دامنه های نامناسبی سایت خود را آغاز می کنند و پس از مدتی تصمیم به کوچ به دامنه جدید می گیرند. همچنین در ایران، فیلترینگ یکی دیگر از دلایل انتقال دامنه به آدرس جدید است. پس از تغییر دامنه سایت به آدرس جدید، باید آدرس قدیم را بر آدرس جدید ریدایرکت کنید. مسئله مهم، ریدایرکت صحیح تمام صفحات سایت بر روی آدرس جدیدشان است. برای انجام این کار وارد پنل مدیریت هاست خود بشید و در پوشه دامنه قدیمی سایت خود یک فایل با نام .htaccess ایجاد کرده سپس کدی که در ادامه آمده است را در فایل .htaccess قرار دهید.

RewriteEngine On

RewriteCond %{HTTP_HOST} ^olddomain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.olddomain.com$
RewriteRule ^(.*)$ “http\:\/\/www.newdomain.com\/$1” [R=301,L]

RewriteEngine On

RewriteCond %{HTTP_HOST} ^olddomain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.olddomain.com$
RewriteRule ^(.*)$ “http\:\/\/www.newdomain.com\/$1” [R=۳۰۱,L]

بجای olddomain نام دامنه قدیم و بجای newdomain نام دامنه جدید خود را بنویسید.

کد .htaccess ریدایرکت یک صفحه بر روی صفحه دیگر

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

به عنوان نمونه به مثال زیر در ارتباط با ریدایرکت لینک ۱ بر روی لینک ۲ توجه کنید:

Link1: http://dbstheme.com/old-address

Link2: http://dbstheme.com/new-address
RedirectMatch 301 /old-address http://dbstheme.com/new-address

RedirectMatch ۳۰۱ /old-address http://dbstheme.com/new-address

حذف www از ابتدای دامنه

برای حذف www از ابتدای آدرس دامنه، باید آدرس با www را بر روی آدرس بدون www ریدایرکت کنید. برای انجام این کار کافیست قطعه کد زیر را در فایل .htaccess موجود در ریشه سایتتان کپی کنید.

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

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.(.)$ [NC] RewriteRule ^(.)$ http://%۱/$۱ [R=۳۰۱,L]

اگر در وب سایت خود از پروتکل امنیتی ssl یا همان https استفاده می کنید بجای کد فوق از کد زیر استفاده کنید.
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www.(.)$ [NC] RewriteRule ^(.)$ http://%1/$1 [R=301,L]

RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www.(.)$ [NC] RewriteRule ^(.)$ https://%1/$1 [R=301,L]

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www.(.)$ [NC] RewriteRule ^(.)$ http://%۱/$۱ [R=۳۰۱,L]

RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www.(.)$ [NC] RewriteRule ^(.)$ https://%۱/$۱ [R=۳۰۱,L]

حذف اسلش / از انتهای لینک های سایت

در استفاده از این کد نهایت دقت را داشته باشید. در برخی سیستم های مدیریت محتوی (cms) نظیر وردپرس، به ویژه پس از نصب افزونه های سئو ساز، همواره علامت اسلش / در انتهای لینک صفحات سایت قرار دارد و الزامی به حذف آن نیست اما در برخی ئی کامرس های اپن سورس نظیر پرستاشاپ و مجنتو، وجود علامت اسمش / در انتهای لینک سبب می شود تا با صفحه خطای ۴۰۴ مواجه شوید. از این رو با ریدایرکت کردن آدرس با اسلش بر روی آدرس بدون اسلش، از بروز چنین مشکلاتی پیشگیری می کنیم. برای انجام این کار، کافیست کد زیر را در فایل .htaccess موجود در ریشه سایتتان کپی کنید.
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !.(gif|jpg|png|jpeg|css|js)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} !^.localhost$ [NC]
RewriteRule ^(.+[^/])/$ http://%{HTTP_HOST}/$1 [R=301,L]

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !.(gif|jpg|png|jpeg|css|js)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} !^.localhost$ [NC]
RewriteRule ^(.+[^/])/$ http://%{HTTP_HOST}/$۱ [R=۳۰۱,L]

در کد فوق، فرمت های gif|jpg|png|jpeg|css|js از حذف اسلش از انتهای لینک استثناء قائل شده است. در صورت نیاز می توانید فرمت های بیشتر را اضافه نمایید.

کد .htaccess ریدایرکت ساب دامنه بر روی دامنه اصلی

اگر می خواهید یکی از ساب دامنه های سایتتان را بر روی دامنه اصلی ریدایرکت کنید، کد دستوری زیر را پس از ویرایش های لازم در آدرس دامنه، در فایل .htaccess موجود در ریشه سایتتان کپی کنید.

RewriteEngine On
RewriteCond %{HTTP_HOST} ^sub.dbstheme.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.sub.dbstheme.com$
RewriteRule (.*)$ http://dbstheme.com/$1 [R=301,L]

RewriteEngine On
RewriteCond %{HTTP_HOST} ^sub.dbstheme.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.sub.dbstheme.com$
RewriteRule (.*)$ http://dbstheme.com/$۱ [R=۳۰۱,L]

کد .htaccess ریدایرکت دامنه اصلی بر روی ساب دامنه

اگر می خواهید دامنه سایتتان را بر روی یک ساب دامنه ریدایرکت کنید، کد دستوری زیر را پس از ویرایش های لازم در آدرس دامنه، در فایل .htaccess موجود در ریشه سایتتان کپی کنید.
Options +SymLinksIfOwnerMatch

RewriteEngine on

RewriteCond %{HTTP_HOST} ^(www.)?dbstheme.com$ [NC]
RewriteRule ^ http://sub.dbstheme.com[R,L]

Options +SymLinksIfOwnerMatch

RewriteEngine on

RewriteCond %{HTTP_HOST} ^(www.)?dbstheme.com$ [NC]
RewriteRule ^ http://sub.dbstheme.com[R,L]

کد .htaccess ریدایرکت یک ساب دومین بر روی دیگری
Options +SymLinksIfOwnerMatch
RewriteEngine on
RewriteCond %{HTTP_HOST} ^sub1.dbstheme.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.sub1.dbstheme.com$
RewriteRule ^/?$ “http\:\/\/sub2.dbstheme.com” [R=301,L]

Options +SymLinksIfOwnerMatch
RewriteEngine on
RewriteCond %{HTTP_HOST} ^sub1.dbstheme.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.sub1.dbstheme.com$
RewriteRule ^/?$ “http\:\/\/sub2.dbstheme.com” [R=۳۰۱,L]

ریدایرکت یک پسوند خاص صفحات سایت به پسوند دیگر

اگر می خواهید یک پسوند خاص به عنوان مثال HTML را بر روی پسوند دیگری نظیر PHP ریدایرکت کنید، کد دستوری زیر را پس از ویرایش های لازم در آدرس دامنه، در فایل .htaccess موجود در ریشه سایتتان کپی کنید.
RedirectMatch 301 (.*).html$ http://dbstheme.com$1.php

RedirectMatch ۳۰۱ (.*).html$ http://dbstheme.com$۱.php

با این کد، صفحاتی نظیر http://dbstheme.com/Page.html به http://dbstheme.com/Page.php ریدایرکت ۳۰۱ می شود.

ریدایرکت صفحات سایت یا وبلاگ با کد HTML

کد ریدایرکت html بیشتر برای سایت های استاتیک ساخته شده با HTML و صاحبان وبلاگ های سرویس های وبلاگدهی رایگان مناسب است که دسترسی به هاست ندارند. با قرار دادن کد زیر در کنار متاهای هدر بعد از تگ می توانید بازدیدکنندگان سایت یا وبلاگ را به مسیر دیگری ریدایرکت کنید.

عدد ۳ در کد فوق بدین معناست که ریدایرکت پس از ۳ ثانیه انجام خواهد شد. اگر می خواهید بازدیدکنندگان بلافاصله به مسیر دلخواه شما ریدایرکت شوند، مقدار آن را به ۰ تغییر دهید.

متدهای ریدایرکت در سایر زبان های برنامه نویسی

PHP page redirect
XHTML

ASP page redirect
XHTML
<%@ Language=VBScript %>
<% Response.Status=”301 Moved Permanently” Response.AddHeader “Location”,”http://dbstheme.com/” %>

 <%@ Language=VBScript %> <% Response.Status=”۳۰۱ Moved Permanently” Response.AddHeader “Location”,”http://dbstheme.com/” %>

ASP .NET page redirect
XHTML

JSP Javascript Page Redirect
XHTML
<% response.setStatus(301); response.setHeader( “Location”, “http://dbstheme.com/” ); response.setHeader( “Connection”, “close” ); %>

 <% response.setStatus(۳۰۱); response.setHeader( “Location”, “http://dbstheme.com/” ); response.setHeader( “Connection”, “close” ); %>

CGI PERL Redirect
XHTML
$q = new CGI;
print $q->redirect(“http://dbstheme.com/”);

$q = new CGI;
print $q->redirect(“http://dbstheme.com/”);

Ruby on Rails Page Redirect
XHTML
def old_action
headers[“Status”] = “301 Moved Permanently”
redirect_to “http://dbstheme.com/”
end

def old_action
headers[“Status”] = “۳۰۱ Moved Permanently”
redirect_to “http://dbstheme.com/”
end

ColdFusion Page Redirect
XHTML
<.cfheader statuscode=”301″ statustext=”Moved permanently”>
<.cfheader name=”Location” value=”http://dbstheme.com”>

<.cfheader statuscode=”۳۰۱” statustext=”Moved permanently”>
<.cfheader name=”Location” value=”http://dbstheme.com”>

مشاهده فیلم آموزشی از سایت آپارات

برای دانلود فیلم آموزش از قسمت تنظیمات روی گزینه دانلود کلیک کرده و کیفیت مد نظر خود را انتخاب کنید تا فیلم آموزش دانلود گردد.

نکته : هر چقدر که عدد این قسمت بیشتر باشد ، کیفیت فیلم دانلودی بالاتر خواهد بود.

آموزش های ابتدایی :

دوستان عزیز آموزش که خدمتتون ارائه کردیم از سری آموزش های ابتدایی پیشگام وب هست و این آموزش جزو پایه ای ترین آموزش های سایت هست امیدوارم که آموزشممون کامل باشه.

منتظر نظرات و پیشنهادات شما در قسمت دیدگاه های سایت هستیم.

learn from cpanel

Overview

The Redirects interface allows you to send all of the visitors of a domain or particular page to a different URL. For example, if you create a page with a long URL, use the Redirects interface to add a redirect from a short URL to the long URL. Visitors can enter the short URL to access the content of the long URL.Note:

You cannot edit a redirect. To modify a redirect, you must delete it, and then recreate it.

Add a redirect

To add a redirect, perform the following actions:

  1. Select a redirect type from the Type menu.
    • Permanent (301) — This setting notifies the visitor’s browser to update its records.
    • Temporary (302) — This setting does not update the visitor’s bookmarks.
  2. Select a domain name from the menu, or select **All Public Domains** to redirect all of the domains that your cPanel account controls.
  3. In the next text box, enter the rest of the URL from which you wish for the server to redirect visitors. For example, if you wish to redirect http://example.com/directory.file.html to another URL, enter directory/file.html in this text box.
  4. In the Redirects to text box, enter the URL to which you wish to redirect users.Important: You must specify a protocol in this text box. For example, http://, https://, or ftp://.
  5. Select one of the following settings:
    • Only redirect with www. — This setting only redirects visitors who enter the www. prefix before the domain name part of the URL.
    • Redirect with or without www. — This setting redirects all users, regardless of whether the visitor enters the www. prefix before the domain name part of the URL.
    • Do Not Redirect www. — This setting does not redirect users who enter the www. prefix before the the domain name part of the URL.Note: The interface disables the www. redirection setting if you select **All Public Domains.**.
  6. Select the Wild Card Redirect setting if you wish to redirect all files within a directory to the same filename in the new directory. For example, if you enable the Wild Card Redirect setting and example1.com redirects to example.com, then a visitor who tries to access the http://example1.com/pic.jpg URL redirects to the http://example.com/pic.jpg URL.
  7. Click Add.
  8. To test the redirect, click the link under Directory in the Current Redirects table. If you properly configured the redirect, the system directs you to the original domain.

Redirects via third-party applications

When you add a redirect with cPanel interface, the system places redirect rules at the bottom of the .htaccess file. Some third-party applications will ignore your rule because those applications only read rules and configurations that their section of the .htaccess file contains.Important:

If you use a third-party application or content management system to add a redirect, such as WordPress®, the redirect may not function properly.

The following example displays the configuration that you must add to the top of the .htaccess file to add a redirect for the Drupal content management system. In this example:

  • drupal.user.example.com represents the URL to redirect.
  • http://cpanel.net/ represents the URL to which to redirect.
1 2 3 4 5 6 7 8 <IfModule mod_rewrite.c> RewriteEngine on RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{HTTP_HOST} ^drupal\.user\.example\.com$ [OR] RewriteCond %{HTTP_HOST} ^www\.drupal\.user\.example\.com$ RewriteRule ^cptest$ "http\:\/\/cpanel\.net\/" [R=301,L] </IfModule