کد هدایت WWW به Non-WWW در آپاچی (.htaccess)
با دستور RewriteCond و بازنویسی در htaccess، هر کاربری که دامنه را با www وارد کند با ریدایرکت ۳۰۱ دائمی به دامنه اصلی بدون www منتقل خواهد شد.
مشخصات فنی و شناسنامه کد (Code Information)
بازبینی: 1405/06/29<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
</IfModule>
کد را کجا قرار دهیم؟ (Placement Guide)
در بالای فایل .htaccess و بعد از دستور RewriteEngine On قرار دهید.
این کد چگونه کار میکند؟ (How it Works)
شرط %{HTTP_HOST} ^www\.(.+)$ نام دامنه را که با www شروع شده میخواند و بخش بعد از آن را در %1 ذخیره میکند. سپس RewriteRule درخواست را به https://%1 هدایت مینماید.
چه زمانی از این کد استفاده کنیم؟ (Use Cases)
زمانی که دامنه استاندارد سایت شما بدون www ثبت شده است و مایلید ترافیک دارای www متمرکز شود.
چه زمانی نباید از این کد استفاده کنیم؟ (Anti-patterns)
اگر دامنه اصلی سایت شما در تنظیمات همگانی وردپرس دارای www است، از این کد استفاده نکنید.
پیشنیازهای اجرا
ماژول mod_rewrite در آپاچی یا لایتاسپید.
نحوه تست و اطمینان از عملکرد
در مرورگر یا ترمینال curl -I https://www.yourdomain.com را صدا بزنید و دریافت کد 301 را بررسی کنید.
نحوه بازگردانی سریع (Rollback)
دستور را از فایل .htaccess حذف کنید.
خطاهای رایج و راهحل رفع
عدم تطابق با آدرس تنظیمشده در Site Address وردپرس که باعث ریدایرکتهای متوالی میشود.
ملاحظات و نکات امنیتی
تمرکز سشنها و کوکیها روی یک دامین معین جهت جلوگیری از کوکیهای متناقض.
تاثیر بر سرعت و پرفورمنس
حذف پرشهای بیهوده با اجرای ریدایرکت در اولین لایه وبسرور.