ایکون
100 قالب سایت آماده
897 هزار تومان
پیش نمایش
آموزش ریدایرکت با htaccess
مجموعه مقالات وردپرس

ریدایرکت 301 با فایل htaccess

بعضی اوقات به دلایل مختلفی ممکن است نیاز به ریدایرکت آدرس دامنه یا فایل های خود داشته باشید. ریدایرکت 301 یکی از انواع تغییر مسیر است که با استفاده از روش های مانند فایل htaccess و ریدایرکت سی پنل می توانید به آسانی آن را انجام دهید. اگر سایت شما هم با چالش ریدایرکت روبرو شده است این مقاله را از دست ندهید.

7
24 فروردین 1401
آخرین بروزرسانی: 14 فروردین 1403

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

چه زمانی باید ریدایرکت 301 را برای دامنه انجام دهیم؟

پس از خرید دامنه و اتصال به هاست، نام دامنه شما باید با یک ادرس شناسایی شود. یک نسخه یکتا با www یا بدون www و https. بعنوان مثال اگر کاربر من در مرورگر ادرس https://domain.com یا https://www.domain.com یا http://domain.com را وارد کرد همگی به یک ادرس ریدایرکت شوند. در واقع تمامی آدرس های سایت به یک ادرس ریدایرکت شوند و همان ادرس در سرچ کنسول و انالیتیکس و سایر ابزارها استفاده شود. در این بخش دلایل استفاده از این نوع تغییر مسیر را آورده ایم.

  • تغییر مسیر فایل های شخصی روی همان دامنه: زمانی که مکان یک فایل قدیمی تغییر کرده است و یا اطلاعات آن در یک فایل جدید وجود دارد.
  • حذف صفحه ای از وب سایت: زمانی که یک صفحه از وب سایت به هر دلیلی حذف شده باشد برای رفع خطای 404 انجام ریدایرکت ضروری است.
  • ریدایرکت یک دامنه قدیمی به دامنه جدید: اگر دامنه وب سایت شما به دامنه جدید منتقل شده است و بخواهید همه آدرس های قدیمی به آدرس جدید منتقل شوند. ریدایرکت 301 یکی از مراحل انتقال سایت وردپرس به دامنه جدید است.
  • اجبار به استفاده از نسخه WWW و یا نسخه بدون WWW سایت: کاربران می توانند سایت شما را با و بدون WWW باز کنند یا ارجاع داده و لینک دهند. اما اگر بخواهید می توانید یکی از این حالت ها را به عنوان نسخه ای که سایت نمایش می دهد تنظیم کنید.
  • فایل ها با پسوند خاص را تغییر مسیر بدهید:  اگر فایل های شما قبلا دارای پسوند .php هستند و اکنون آنها را به پسوند .html تبدیل کرده اید، با ریدایرکت 301 لینک ها را به روز کنید تا بتوانند از پسوند جدید استفاده کنند.
  • تغییر یا جایگزینی پیوندهای یکتا: برای تغییر ساختار لینک و پیوندهای یکتا می توانید از ریدایرکت 301 استفاده کنید.
   ❗️ ریدایرکت 301 را زمانی به کار ببرید که مطمئن شوید از آدرس های قبلی استفاده نخواهید کرد.

در ادامه به شرح دو روش مرسوم ریدایرکت می پردازیم.

ریدایرکت دامنه با htaccess

قبلا گفتیم که فایل htaccess چیست، در کجا قرار دارد و کاربرد آن چیست. در این بخش می خواهیم نحوه ریدایرکت با htaccess را توضیح دهیم.

گام اول: ابتدا وارد سی پنل شده و Filemanager را بازکنید.

ریدایرکت دامنه با htaccess از طریق فایل منیجر

گام دوم: در Filemanager > Setting (تنظیمات در سمت راست و بالای فایل منیجر قرار دارد) بررسی کنید که تیک گزینه Show Hidden Files (dotfiles) فعال باشد.

گام سوم: در این بخش از ریدایرکت با htaccess در قسمت Document root for نام دامنه موردنظرتان را انتخاب کنید.

تنظیمات مشاهده فایل های پنهان در فایل منیجر

گام چهارم: بر روی htaccess دامنه مورد نظر کلیک راست کرده و گزینه edit را بزنید.

ریدایرکت دامنه با فایل htaccess

نکته اگر هنوز فایل htaccess را پیدا نکرده اید مقاله یافتن فایل htaccess را بخوانید.

گام پنچم: سپس فایل htaccess را بر اساس نوع ریدایرکت 301 با دستورات متداول ریدایرکت زیر در htaccess ویرایش کنید.

✔️ ریدایرکت فایل ها با htaccess

برای ریدایرکت فایل های شخصی مانند  yourdomain.com /oldfile.htm به newfile.htm می توانید از ریدایرکت 301 استفاده کنید.

Redirect 301 /oldfile.htm /newfile.htm

برای ریدایرکت یک فایل خاص به دامنه های دیگر برای مثال yourdomain.com/oldfile.htm به yourdomain.ir/newfile.htm  از کد زیر استفاده کنید.

Redirect 301 /oldfile.htm https://yourdomain.ir/newfile.htm

✔️ ریدایرکت کل دامنه با htaccess

اگر دامنه خود را تغییر دادید برای مثال از yourdomain.com به yourdomain.ir و دیگر تمایلی به استفاده از دامنه قدیمی ندارید،  برای استفاده از دامنه جدید، ریدایرکت 301 را برای کل دامنه تنظیم کنید. با این روش همه لینک های قدیمی به دامنه جدید یعنی yourdomain.ir منتقل شوند.


RewriteEngine on
RewriteCond %{HTTP_HOST} ^yourdomain.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.yourdomain.com [NC]
RewriteRule ^(.*)$ https://yourdomain.ir/$1 [L,R=301,NC]

✔️ ریدایرکت دامنه به نسخه www

گوگل دو سایت yourdomain.com و www.yourdomain.com را به عنوان دو دامنه مجزا در نظر می گیرد. شما با ریدایرکت با htaccess و اجبار به استفاده از نسخه WWW می توانید مشخص کنید کدام نسخه توسط موتورهای جست و جو نمایش داده شود. در واقع شما نام دامنه ای که می خواهید در هنگام باز شدن سایت نمایش داده شود را تعیین می کنید. اگر افراد به سایت شما به عنوان yourdomain.com لینک داده اند اما می خواهید بازدیدکنندگان به www.yourdomain.com ختم شوند و به او نمایش داده شود می توانید با کد زیر اجبار به استفاده از نسخه www را انجام دهید.


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

✔️ ریدایرکت دامنه به نسخه بدون www

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


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

✔️ ریدایرکت فایل ها تغییر پسوند داده شده با htaccess

اگر نوع فایل تغییر کرده و میخواهید همه لینک هایی که به فایل قبلی انجام شده اند را اصلاح کنید باید از دستور ریدایرکت 301 زیر استفاده کنید. مانند example.com/file.php به  example.com/file.htm.


RewriteEngine On
RewriteCond %{REQUEST_URI} .php$
RewriteRule ^(.*).php$ /$1.htm [R=301,L]}

ریدایرکت http به https با htaccess

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


RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

ریدایرکت مباحث متنوعی دارد که برای داشتن یک سایت بهینه  بهتر است آنها را بدانید.

مراحل تنظیمات ریدایرکت 301 در سی پنل

هاست cpanel ابزاری دارد که شما می توانید با انجام تنظیمات ریدایرکت در سی پنل بدون تغییر دستی کدهای htaccess به صورت خودکار کدهای لازم برای ریدایرکت را به این فایل اضافه کنید. برای تنظیم ریدایرکت مراحل زیر را مطابق تصویر انجام دهید.
1. ابتدا وارد سی پنل شوید و از بخش Domain بر روی گزینه Redirect کلیک کنید.

2. سپس در بخش type ریدایرکت 301 (دائمی) یا 302 (موقتی) را انتخاب کنید.

3. از منوی کشویی بعدی نام دامنه ای که می خواهید ریدایرکت برای آن انجام شود را انتخاب کنید.

4. در بخش بعدی (فیلد /) نام فایل را در صورت نیاز وارد کنید.

5. در بخش Redirects to آدرسی را وارد کنید که می خواهید به آن ریدایرکت شود.

6. در این بخش گزینه های ریدایرکت با www، ریدایرکت با و بدون www، ریدایرکت بدون www را می توانید انتخاب کنید.

7. گزینه Wild Card Redirect نام فایل یا پوشه را بعد از ریدایرکت در انتخاب url اضافه می کند.

8. بعد از تکمیل اطلاعات دکمه add را بزنید.

ریدایرکت 301 با استفاده از سی پنل

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

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

ریدایرکت 301 از طریق تغییر و ویرایش کد انجام می شود. برای مثال انواع ریدایرکت از طریق htaccess با اهداف زیر انجام می شود.

  • ریدایرکت دامنه به نسخه بدون www
  • ریدایرکت کل دامنه با htaccess
  • ریدایرکت فایل های تغییر پسوند داده شده با htaccess
  • و غیره
مقالات مرتبط
بنر
آموزش گام به گام بسته نصب آسان در لوکال هاست
اگر در لوکال هاست وب سایت خود را راه اندازی کنید می توانید یکباره وب سایت خود را به هاست منتقل کنید. یعنی بدون آنکه نیاز به هاست و دامنه داشته باشید، سایت را بدون استرس و نگرانی راه اندازی می کنید  و پس از مطمئن شدن از همه تغییرات دلخواهتان، آن را به هاست اصلی انتقال می دهید. همچنین در مصرف ...
بنر
آموزش قالب وودمارت؛ آموزش صفر تا صد طراحی فروشگاه
اگر می خواهید یک سایت حرفه ای طراحی کنید که کلیه امکانات یک فروشگاه آنلاین را داشته باشد کافی است یکی از 50 دموی فارسی و اختصاصی مانند دیجی کالا و موتن رو قالب وودمارت را نصب و استفاده کنید. همچنین این قالب فروشگاه ساز به همراه اپلیکیشن ارائه شده و کاربران می توانند یک نسخه از وب سایت را روی ...
بنر
آموزش نصب و فعالسازی ioncube در زمپ
ionCube Loader ماژولی است که برای اجرای فایل های رمزگذاری شده روی سرور نصب می شود. نصب و فعالسازی ioncube به سادگی انجام می شود. در صورت فعال نبودن ionCube شما با خطا مواجه می شوید. اما راهکار ساده رفع این خطا نصب ionCube در کمتر از چند دقیقه است که در ادامه به توضیح آن به صورت ویدئویی می پردازیم.
بنر
آموزش نصب آسان قالب وردپرس در Cpanel
شاید شما هم این جمله را شنیده باشید. در کم تر از 10 دقیقه سایت وردپرس خود را نصب کنید. در نگاه اول به نظرتان این جمله فقط یک تبلیغ برای جذب مخاطب به نظر می‌رسد اما کاملا درست است. کافی است از بسته نصب آسان وردپرس استفاده کنید تا سایت شما در کم تر از 10 دقیقه، روی هاست نصب شود. با هم نصب قالب ...
7 دیدگاه
mkhani
mkhani
20 فروردین 1402 04:05

درود بر شما
برای تغییر پیوندهای یکتای سایتم از /%postname%/ به /%postname%-1/ نیاز به کد ریدایرکت 301 دارم و نمیخوام از افزونه استفاده کنم
از چه کدی باید استفاده کنم؟

آیا مفید بود ؟
0
مهسا کاظمی پور
مهسا کاظمی پور
20 فروردین 1402 08:58

سلام عرض ادب
دوست عزیز بهتره که برای ریدایرکت 301 از افزونه استفاده کنید ولی اگر تعداد پیوندهاتون زیاده، میتونید با استفاده از کدهای regex در htaccess ریدایرکت را انجام بدید. با سرچ در اینترنتی میتونید کدها را پیدا کنید و البته باید اطلاعات کافی برای استفاده از این کدها را داشته باشید.

آیا مفید بود ؟
mkhani
mkhani
20 فروردین 1402 12:16

درود
بله تعداد صفحات زیاده و البته خیلی گشتم که کد ریجکسش رو پیدا کنم که پیدا نشد و برای همین از شما پرسیدم

آیا مفید بود ؟
mkhani
mkhani
20 فروردین 1402 14:46

ممنون میشم کد ریجکسش رو بگید

آیا مفید بود ؟
مهسا کاظمی پور
مهسا کاظمی پور
20 فروردین 1402 15:17

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

RewriteRule ^olddir/(.*)$ newdir/$1 [R=301,L]

میتونید از لینک های زیر هم کمک بگیرید. اگر موفق نشدید حتما از شخصی که در زمینه کدهای ریجکس دانش دارد کمک بگیرید.
https://www.faqforge.com/linux/redirect-http-requests-to-a-new-folder-with-apache-rewrite-rules/
https://stackoverflow.com/questions/71411212/htaccess-301-redirect-only-work-for-1-new-link

آیا مفید بود ؟
فاطمه کاظمی زاده
فاطمه کاظمی زاده
28 فروردین 1401 16:32

ممنون خانم کاظمی پور عالی بود

آیا مفید بود ؟
0
مهسا کاظمی پور
مهسا کاظمی پور
29 فروردین 1401 09:17

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

موفق باشید

آیا مفید بود ؟