~2 دقیقه مطالعه • بروزرسانی ۲۹ بهمن ۱۴۰۴
1. مقدمه
ریدایرکت کاربران را بهطور خودکار از یک URL به URL دیگر منتقل میکند. اگرچه معمولاً میتوانید از بخش Redirects در cPanel استفاده کنید، اما برخی برنامههای ثالث یا CMSها نیاز دارند که ریدایرکتها بهصورت دستی در فایل .htaccess تنظیم شوند.
2. چه زمانی باید ریدایرکتها را دستی تنظیم کرد؟
در حالت عادی، cPanel قوانین ریدایرکت را در انتهای فایل .htaccess اضافه میکند. اما در موارد زیر باید ریدایرکتها را دستی تنظیم کنید:
- برنامههای ثالث فقط قوانین داخل بخش مخصوص خود در
.htaccessرا میخوانند. - سیستمهای مدیریت محتوا مانند WordPress قوانین ریدایرکت cPanel را بازنویسی یا نادیده میگیرند.
- ریدایرکتها به دلیل ترتیب قوانین یا نیازهای خاص برنامه درست کار نمیکنند.
3. نحوه ویرایش فایل .htaccess
برای ویرایش فایل .htaccess مراحل زیر را انجام دهید:
- ورود به cPanel → File Manager
- کلیک روی Settings در بالای صفحه
- فعال کردن گزینه Show Hidden Files (dotfiles)
- کلیک روی Save
- فایل
.htaccessرا در پوشهpublic_htmlپیدا کنید
اکنون میتوانید فایل را با ویرایشگر داخلی File Manager ویرایش کنید.
4. مثالهای ریدایرکت دستی
4.1 ریدایرکت دائمی 301
ریدایرکت کل سایت:
Redirect 301 / http://example.com/ریدایرکت یک صفحه:
Redirect 301 /original.html http://www.example.com/new.htmlریدایرکت یک پوشه:
Redirect 301 /old-directory http://www.example.com/new-directory4.2 ریدایرکت موقت 302
ریدایرکت موقت کل سایت:
Redirect 302 / http://example.com/ریدایرکت موقت یک صفحه:
Redirect 302 /original.html http://www.example.com/new.htmlریدایرکت موقت یک پوشه:
Redirect 302 /old-directory http://www.example.com/new-directory4.3 ریدایرکت مخصوص Drupal
در Drupal باید قوانین ریدایرکت را در بالای فایل .htaccess قرار دهید. مثال:
<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>
در این مثال:
drupal.user.example.comآدرس مبدا است.http://cpanel.net/مقصد ریدایرکت است.
5. نتیجهگیری
ریدایرکت دستی به شما کنترل کامل روی رفتار URLها میدهد، مخصوصاً زمانی که CMSها یا برنامههای ثالث قوانین cPanel را بازنویسی میکنند. با ویرایش مستقیم .htaccess میتوانید مطمئن شوید که ریدایرکتها دقیقاً همانطور که میخواهید عمل میکنند.
نوشته و پژوهش شده توسط دکتر شاهین صیامی