آموزشمقالات

آموزش ریدایرکت دامنه (هدایت از آدرسی به آدرس دیگر)

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

نحوه ی ریدایرکت دامنه از طریق وب سرور آپاچی

سرور Http آپاچی یک نرم افزار وب سرور متن باز است که قابلیت cross-platform دارد.  cross-platform به این معنا است که در چندین نوع دستگاه مختلف قابل اجرا می باشد. البته لازم به ذکر است که 92 درصد از کاربران این وب سرور از آن بر روی توزیع های مختلف لینوکس استفاده می کنند.

اگر آپاچی را روی سرور خود ندارید، نصب کنید.

در توزیع های لینوکس مبتنی بر RPM مانند CentOS و Fedora برای نصب آپاچی باید از دستور زیر کمک بگیرید :

yum install httpd

 

مطمئن شوید که ماژول mod_rewrite فعال است:

httpd -M | grep rewrite
 rewrite_module (shared)

 در اوبونتو و دبیان دستور زیر را اجرا کنید:

sudo apt-get update
sudo apt-get install apache2

ماژول  mod_rewrite را فراخوانی کنید :

sudo a2enmod rewrite

سرویس آپاچی را ری استارت کنید :

sudo service apache2 restart

یک هاست مجازی ساده در آپاچی بسازید :

یک هاست مجازی ساده در آپاچی برای دامنه ی قدیمی که می خواهید آن را به یک دامنه ی جدید هدایت کنید، بسازید. از دستورالعمل مسیریابی دائمی زیر برای هدایت سرویس گیرنده وب به آدرس جدید استفاده کنید:

<VirtualHost *:80>

ServerName دامنه ی قبلی.com
ServerAlias www.دامنه ی قبلی.com

RedirectPermanent / http://www.دامنه ی جدید.com/

CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

سرور آپاچی را ری استارت کنید :

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

RewriteEngine on
RewriteCond %{HTTP_HOST} ^old-domain.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.old-domain.com [NC]
RewriteRule ^(.*)$ http://new-domain.com/$1 [L,R=301,NC]

 

نحوه ی ریدایرکت دامنه از طریق وب سرور NGINX

Nginx یک وب سرور با کارایی بالا ، رایگان و متن باز است. Nginx به متعادل کننده ی بارگذاری (load balancing) و پروکسی معکوس (reverse proxying) و ذخیره سازی (caching) نیز معروف است. پیکربندی آن ساده و استفاده ی آن از حافظه کم است.

آپاچی را متوقف کنید.

آپاچی روی سرور خود را با دستور زیر متوقف سازید:

service httpd stop

سرویس آپاچی را غیر فعال کنید.

systemctl disable httpd

 NGINX را بر روی توزیع های لینوکس مبتنی بر RPM نصب کنید.

برای نصب وب سرور NGINX بر روی توزیع های لینوکس مبتنی بر RPM مانند CentOS و Fedora باید از دستورات زیر کمک بگیرید :

yum install epel-release
yum install nginx
systemctl enable nginx
service nginx start

 NGINX را بر روی اوبونتو نصب کنید.

در آموزش نحوه ی نصب Nginx بر روی اوبونتو تمام جزئیات مرتبط با نصب این وب سرور را بیان کردیم. برای نصب NGINX بر روی اوبونتو و سایر توزیع های لینوکس که مبتنی بر دبیان هستند از دستورات زیر استفاده نمایید :

sudo service apache2 stop
sudo apt-get remove --purge apache2 apache2-utils
sudo rm -rf /etc/apache2
sudo apt-get update
sudo apt-get install nginx

اگر پیامی مبنی بر عدم در دسترس بودن پکیج های NGINX یا موارد مشابهی رو به رو شدید، NGINX را ار طریق مخازن آن نصب کنید:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:nginx/stable
sudo apt-get update
sudo apt-get install nginx

 

Nginx را استارت کنید.

سرویس nginx را از طریق دستور زیر آغاز کنید:

sudo service nginx start

 پیکربندی Nginx

جهت ریدایرکت دامنه باید بلوک های سرور nginx را ویرایش کنید و اگر تاکنون ساخته نشده اند، یک بلاک جدید بسازید. خطوط زیر را اضافه کنید:

server {
  listen 80;
  server_name old-domain.com www.old-domain.com;
  return 301 http://www.new-domain.com$request_uri;
}

اگر از نسخه ی قدیمی تر nginx یعنی نسخه ی 0.9.1 و قبل تز از آن استفاده می کنید، دستورات زیر را اضافه کنید:

server {
  listen 80;
  server_name old-domain.com www.old-domain.com;
  rewrite ^ http://www.new-domain.com$request_uri? permanent;
}

 nginx را ری استارت کنید.

برای اعمال تغییرات فراموش نکنید که باید سرویس nginx را مجددا راه اندازی نمایید :

service nginx restart

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

برچسب ها
نمایش بیشتر

نسرین ولی خانی

مهندسی تکنولوژی نرم افزار در صورت نیاز به راه ارتباطی به ایمیل زیر پیام ارسال نمایید. nasi.vl76@gmail.com

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

بستن