هدایت یا تغییر مسیر(Redirect) دامنه که URL forwarding نامیده می شود یک تکنیک وب است که به ما این امکان را خواهد داد که یک صفحه ی اینترنتی با بیش از یک آدرس در دسترس باشد. چند راه برای Redirect دامنه وجود دارد که بستگی به نوع وب سرور و دیگر امکانات آن دارد. در این مطلب به شما نشان خواهیم داد که چگونه در وب Apache, NGINX دامنه خود را هدایت کنید.
در توزیع های لینوکس مبتنی بر RPM مانند CentOS و Fedora از دستور زیر برای نصب آپاچی استفاده کنید.
yum install httpd
بررسی کنید که ماژول mod_rewrite فعال باشد.
httpd -M | grep rewrite
(rewrite_module (shared
در اوبونتو (Ubunto) و دبیان (Debian) از دستور زیر برای نصب آپاچی استفاده کنید.
sudo apt-get update
sudo apt-get install apache2
در صورت غیر فعال بودن، با دستور زیر ماژول mod_rewrite را فعال کنید.
sudo a2enmod rewrite
سرویس آپاچی را ری استارت کنید.
sudo service apache2 restart
فایل htaccess. را با ویرایشگر باز کنید.
cd /var/www/html
sudo vi .htaccess
اطلاعات داخل آن مانند اطلاعات زیر است تغییرات را انجام دهید.
به جای old-domain.com دامنه ای که می خواهید Redirect شود وارد کنید.
و به جای new-domain.com دامنه ای که می خواهید دامنه قبلی به آن Redirect شود وارد کنید.
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
انجینکس یک وب سرور رایگان و متن باز است که قابل استفاده به عنوان پروکسی معکوس ، لود بالانسر (load balance) ، کش HTTP و … استفاده می شود.
برای استفاده از NGINX سرویس آپاچی را بر روی سرور خود متوقف کنید.
service httpd stop
اجزا شدن آپاچی به صورت اتوماتیک در زمان بوت شدن را غیر فعال کنید.
systemctl disable httpd
در لینوکس های مبتنی بر RPM از این دستورات برای نصب NGINX استفاده کنید.
yum install epel-release
yum install nginx
systemctl enable nginx
service nginx start
نصب 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
در صورتی که پیغامی مبنی بر این که پکیج انجینکس در دسترس نیست (there is no nginx package available)، برای نصب انچینکس از Repository NGINX استفاده کنید.
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:nginx/stable
sudo apt-get update
sudo apt-get install nginx
سرویس انجینکس را اجرا کنید.
sudo service nginx start
بلوک اطلاعات سرور وب سرور آپاچی مربوط به دامنه قدیمی را ویرایش کنید. در صورتی که هنوز ایجاد نشده است آن را ایجاد کنید.
خطوط زیر را اضافه کنید:
}server
;listen 80
;server_name old-domain.com www.old-domain.com
;return 301 http://www.new-domain.com$request_uri
{
request_url$ به هر چیزی پس از دامنه گوش فرا می دهد و کاربر را به هرچیزی که بعد از دامنه نوشته شده باشد هدایت می کند.
اگر از نسخه های قدیمی nginx استفاده می کنید به جای خطوط بالا خطوط زیر را اضافه کنید.
}server
;listen 80
;server_name old-domain.com www.old-domain.com
;rewrite ^ http://www.new-domain.com$request_uri? permanent
{
برای اعمال تغییرات انجینکس را ری استارت کنید.
امیدوارم مطلب مفید واقع شده باشد.
۲ comments. دیدگاه جدید بگذارید
ممنون خیلی کمک کرد.
حسین عزیز،
خوشحالیم که این مطلب مورد استفاده شما قرار گرفته.
به امید دیدار مجدد شما در ایزی هاست