آموزش جامع سیستم ریدایرکت (ساده + Regex)
بخش اول : راهنمایی کلی استفاده از سیستم ریدایرکت آدرس ها
-
آدرس مبدا:
-
باید با اسلش شروع شود (مثال:
/old-page.html
) -
حساس به حروف بزرگ و کوچک (case-sensitive)
-
نیازی به وارد کردن ادرس دامنه نیست
-
-
آدرس مقصد:
-
میتواند آدرس نسبی (مثال:
/new-page
)
-
-
نوع ریدایرکت:
-
301: برای تغییر دائمی آدرس (بهترین گزینه برای SEO)
-
302: برای تغییر موقت آدرس
-
307: مشابه 302 اما روش درخواست (GET/POST) را حفظ میکند.
-
-
وضعیت:
-
امکان غیرفعال کردن موقت ریدایرکت بدون حذف آن
-
📚بخش دوم : آشنایی با سیستم ریدایرکت
1.1 کاربردهای اصلی:
-
تغییر ساختار URLهای سایت بدون از دست دادن ترافیک
-
انتقال کاربران از صفحات قدیمی به نسخههای جدید
-
مدیریت لینکهای شکسته (404)
-
یکپارچهسازی سیستمهای مختلف
1.2 انواع ریدایرکت:
-
301: ریدایرکت دائمی (بهینه برای سئو)
-
302: ریدایرکت موقت
-
307: ریدایرکت موقت با حفظ متد درخواست
1.3 تفاوت ریدایرکت ساده و Regex:
-
ساده: تطابق دقیق آدرس
-
Regex: تطابق الگویی پیشرفته
🛠 بخش 3: ریدایرکتهای ساده
2.1 فرمت کلی:
آدرس مبدا: /old-path
آدرس مقصد: /new-path
نوع: 301
2.2 مثالهای کاربردی:
-
تغییر نام صفحه:
مبدا: /product-old.html مقصد: /product-new.html
-
انتقال به زیردایرکتوری:
مبدا: /blog مقصد: /articles
-
حذف پسوند فایل:
مبدا: /about.php مقصد: /about
🔍 بخش 4: ریدایرکتهای Regex (پیشرفته)
3.1 مفاهیم پایه Regex:
-
$
: پایان رشته -
([0-9]+)
: گروه عددی : در صورتی که جز اولین گروه باشند با $1 قابل دسترس است -
([a-z]+)
: گروه حروفی کوچک -
(.*)
: هر کاراکتری (صفر تا بینهایت)
3.2 فرمت کلی:
آدرس مبدا (Regex): /old-path/([0-9]+)$
آدرس مقصد: /new-path/$1
فعال کردن Regex: ☑
3.3 مثالهای پیشرفته:
-
تغییر ساختار محصولات:
مبدا: /product/([0-9]+)$ مقصد: /prd/$1 نتیجه: /product/123 → /prd/123 /product/624→ /prd/624
-
مدیریت آدرسهای چند سطحی:
مبدا: /category/([a-z]+)/([0-9]+)$ مقصد: /shop/$1?page=$2 نتیجه: /category/electronics/2 → /shop/electronics?page=2
-
نسخهبندی API:
مبدا: /api/v1/(.*)$ مقصد: /api/v2/$1 نتیجه: /api/v1/users → /api/v2/users
-
انتقال پارامترها:
مبدا: /search/([^/]+)/?$ مقصد: /search?q=$1 نتیجه: /search/iphone → /search?q=iphone
⚠ بخش 5: نکات حیاتی
-
تست الگوها:
-
همیشه الگوها را در ابزارهایی مثل Regex101 تست کنید
-
-
ترتیب ریدایرکتها:
-
ریدایرکتهای عمومی را در آخر قرار دهید
-
ریدایرکتهای خاص اولویت بالاتر دارند
-
-
امنیت:
-
از الگوهای باز مثل
.*
خودداری کنید و به صورت کلی وارد نکنید مگر اینکه قبل از ان الگوی ثابتی قرار داده باشید -
گروههای کلی را محدود کنید به ادرس های ثابت مثل post cat tag
-
-
بهینهسازی:
-
برای عملکرد بهتر، الگوهای پیچیده را ساده کنید
-
از ^ و $ برای محدود کردن الگوها استفاده کنید
-
🧩 بخش 6: نمونههای ترکیبی
-
انتقال وبلاگ قدیم:
مبدا: /blog/([0-9]{4})/([0-9]{2})/(.*)$ مقصد: /articles/$3 نتیجه: /blog/2023/10/my-post → /articles/my-post
-
مدیریت خطاهای 404:
مبدا: (.*)/old-page$ مقصد: $1/new-page نتیجه: /any-path/old-page → /any-path/new-page
همچنین برای تست ریدایرکت ها میتوانید از ابزار زیر استفاده کنید
ابزار رایگان تست ریدایرکت آدرس ها
این سیستم به شما امکان مدیریت هوشمند تمام تغییرات ساختاری سایت را میدهد. برای شروع، ابتدا با ریدایرکتهای ساده کار کنید و پس از تسلط، از قابلیتهای پیشرفته Regex استفاده نمایید.