كيفية إعادة توجيه عناوين URL باستخدام NGINX؟ (الدوام المؤقت)

نشرت: 2024-01-26

جدول المحتويات
ما هو إعادة التوجيه؟
ما هي الحاجة إلى إعادة توجيه Nginx؟
طرق إعادة التوجيه الشائعة لـ Nginx (المؤقتة والدائمة)
كيفية إعادة توجيه عناوين URL باستخدام Nginx (المؤقت والدائم)
تحقق من بناء جملة Nginx
أعد تشغيل خادم Nginx
ملخص
أسئلة مكررة

ما هو إعادة التوجيه؟

فيما يتعلق بـ Nginx، إعادة التوجيه هي وظيفة خادم الويب حيث يتم نقل حركة مرور موقع الويب من عنوان URL إلى آخر. إنها واحدة من أكثر الميزات المفيدة التي يمكنك من خلالها إعادة توجيه الزوار بسهولة إلى موقع آخر تلقائيًا.

على الرغم من وجود أنواع عديدة من عمليات إعادة التوجيه التي يمكنك القيام بها، إلا أن النوعين الأكثر أهمية والأكثر استخدامًا هما إعادة التوجيه الدائمة (301) وإعادة التوجيه المؤقتة (302).

في هذا المنشور، سنعرض لك طرق إعادة التوجيه بأمثلة مثل، من www إلى غير www، وإعادة توجيه Nginx إلى مجال، وإعادة توجيه Nginx من HTTP إلى HTTPS، وما إلى ذلك.


اقرأ: كيف يعمل عنوان URL لإعادة التوجيه في WordPress؟ 5 أفضل الطرق


ما هي الحاجة إلى إعادة توجيه Nginx؟

  • يوفر Nginx إحدى الميزات المهمة، مثل إعادة توجيه عناوين URL لموقع الويب إلى عنوان آخر بناءً على المعايير.
  • تعد عمليات إعادة التوجيه بواسطة Nginx سهلة الاستخدام للغاية وسهلة التهيئة، مما يجعلها مرنة جدًا لإدارة عناوين URL لموقع الويب.
  • إنه مفيد جدًا في الحفاظ على تصنيف تحسين محركات البحث (SEO) لصفحة ما خاصة إذا كنت تنتقل من نظام إدارة محتوى إلى آخر.
  • تساعد ميزة إعادة التوجيه أيضًا في الحفاظ على موضع SERP على الرغم من التغييرات في بنية عنوان URL.

طرق إعادة التوجيه الشائعة لـ Nginx (المؤقتة والدائمة)

كما ذكرنا سابقًا، هناك أنواع متعددة من طرق إعادة التوجيه المتاحة، ولكن من الناحية العملية، لا يوجد سوى طريقتين شائعتين الاستخدام، أي إعادة التوجيه المؤقتة والدائمة.

إعادة التوجيه المؤقتة (رمز الاستجابة: تم العثور على 302)

  • من الاسم نفسه، يمكنك توقع ما سيفعله الدواء المؤقت. حسنًا، تخدم هذه الطريقة غرض تغيير موقع الصفحة مؤقتًا من مكان إلى آخر.
  • يتم استخدام رمز الاستجابة: 302 Found لإظهار إعادة التوجيه المؤقتة للصفحة أثناء عمليات إعادة التوجيه هذه.
  • يتم استخدامه في الغالب أثناء صيانة الموقع؛ تعمل إعادة التوجيه المؤقتة على إعلام حركة المرور أو المستخدمين بعدم توفر موقع الويب مؤقتًا.
  • ويمكن استخدامه أيضًا لإعادة توجيه صفحة غير مكتملة إلى نقطة أو صفحة رئيسية أخرى.
  • مثال على السيناريو: ينتقل الزائر إلى صفحة موقع الويب، ولكن بسبب الصيانة، تتم إعادة توجيهه إلى إشعار يشير إلى أن موقع الويب قيد الصيانة حاليًا.
Temporary Redirection
إعادة التوجيه المؤقتة (رمز الاستجابة: تم العثور على 302)

إعادة التوجيه الدائم (رمز الاستجابة: تم العثور على 301)

  • يتم استخدام إعادة توجيه Nginx الدائمة لنقل نطاق الصفحة بشكل دائم.
  • يتم استخدام إعادة التوجيه 301 لتعيين الحركة الدائمة للصفحة في هذا السياق.
  • يتم استخدام إعادة التوجيه هذه بشكل أساسي عندما يريد المستخدم تغيير اسم المجال ولم يعد يريد أن تصل حركة مرور موقع الويب إلى الموقع القديم.
Permanent Redirection
إعادة التوجيه الدائم (رمز الاستجابة: تم العثور على 301)

كيفية إعادة توجيه عناوين URL باستخدام Nginx (المؤقت والدائم)

قبل أن نبدأ، تحتاج أولاً إلى التأكد من تثبيت NGINX على VPS أو الخادم الافتراضي الخاص لديك. بعد ذلك قم بالوصول إلى VPS الخاص بك عبر SSH. في Wpoven، يمكنك الوصول بسهولة إلى موقعك عبر وحدة تحكم سطر أوامر SSH.


قراءة: هل يمكنني الوصول إلى موقع WPOven الخاص بي عبر SSH


إعداد التكوين لـ NGINX

  • موقع ملف تكوين NGINX: عادةً ما يتم تخزين تكوين NGINX في ملف ‎.conf، وهو ملف نصي عادي يحتوي على توجيهات وإعدادات الخادم.
  • الموقع الافتراضي: غالبًا ما يكون الموقع الافتراضي لملفات تكوين NGINX داخل الدليل الجذر للمستند الخاص بموقعك (مواقعك). في هذه الحالة، يذكر المسار: /etc/nginx/sites-available/directory_name.conf .
  • دليل جذر المستند: هذا الدليل هو المكان الذي يتم فيه تخزين ملفات موقع الويب الخاص بك. يمكن أن يختلف جذر المستند؛ بالنسبة لخادم الموقع الواحد، فقد يكون موجودًا في الدليل /html . إذا كان الخادم الخاص بك يستضيف مواقع متعددة، فقد يكون جذر المستند ضمن دليل نطاق محدد مثل /domain.com .
  • تسمية ملف التكوين: اسم ملف .conf الخاص بك يتوافق مع موقعك. على سبيل المثال، إذا كان موقعك موجودًا في الدليل /html ، فقد يُسمى الملف .conf html.conf . إذا كان موجودًا في دليل مثل /domain.com ، فيمكن تسمية الملف .conf domain.com.conf .
  • ملف التكوين الافتراضي: داخل /etc/nginx/sites-available/directory ، يوجد عادةً ملف افتراضي يمكنك استخدامه كقالب. قد يحتوي هذا الملف على تكوينات أساسية يمكنك نسخها أو تعديلها لتناسب احتياجاتك.
  • إنشاء ملف تكوين جديد: بدلاً من ذلك، لديك خيار إنشاء ملف .conf جديد. على سبيل المثال، يمكنك إنشاء ملف باسم html.conf أو domain.com.conf استنادًا إلى بنية موقعك واصطلاحات التسمية.

قد تتفاجأ بمعرفة أنه يوجد في Nginx أداة مدمجة متاحة تسمى توجيه "إعادة الكتابة". إنها أداة مفيدة للغاية تجعل عملية إعادة التوجيه سهلة. أفضل ما في الأمر هو أنه لا يوجد شيء خاص عليك القيام به حيال ذلك، فهو موجود تلقائيًا عندما تقوم بتثبيت Nginx جديد.

إن توجيه "إعادة الكتابة" هذا ليس مخصصًا فقط لإجراء عمليات إعادة التوجيه الأساسية، ولكنه متعدد الاستخدامات تمامًا. أي أنك ستتمكن من إنشاء نوعين من عمليات إعادة التوجيه، الدائمة والمؤقتة.

كل ما عليك فعله هو تمرير وسيطتين فقط، عنوان URL القديم وعنوان URL الجديد. فيما يلي بعض الأمثلة للرجوع إليها. فقط أدخل الأسطر التالية في تكوين الخادم الخاص بك.

أولاً، افتح ملف التكوين عن طريق إدخال الأمر التالي في الوحدة الطرفية.

$ sudo vi /etc/nginx/nginx.conf

بعد ذلك استخدم الأوامر التالية الواردة أدناه وفقًا لمتطلباتك.

1. إعادة توجيه الصفحة إلى صفحة Nginx

صفحة مؤقتة لإعادة توجيه صفحة Nginx

server {
# Temporary redirect to an individual page
rewrite ^/oldpage$ http://www.example.com/newpage redirect;
}

إعادة توجيه الصفحة الدائمة إلى صفحة Nginx

server {
# Permanent redirect to an individual page
rewrite ^/oldpage$ http://www.example.com/newpage permanent;
}

من الأوامر المذكورة أعلاه، لاحظت أنه إذا كنت تريد إنشاء إعادة توجيه دائمة، فكل ما عليك فعله هو استبدال "إعادة التوجيه" بكلمة "دائم" في نهاية التوجيه.

2. WWW إلى إعادة توجيه Nginx غير www

إعادة التوجيه الدائم من www إلى غير www:

server {
# Permanent redirect to non-www
server_name www.example.com;
rewrite ^/(.*)$ http://example.com/$1 permanent;
}


ملاحظة : في حالة رغبتك في إعادة التوجيه من موقع غير www إلى www، كل ما عليك فعله هو استبدال عناوين URL لموقع الويب المذكورة في الأمر أعلاه. أي استبدل www.example.com بـ example.com والعكس.


3. كيفية إعادة توجيه عنوان URL من HTTP إلى HTTPS في Nginx؟

قبل القيام بإعادة التوجيه هذه، لا تنس تثبيت شهادة SSL. إعادة التوجيه إلى HTTPS لها فوائدها. فهو يساعد على حماية موقع الويب الخاص بك من جميع هجمات MIMT، وسرقة البيانات، وما إلى ذلك. وحتى منافذها مختلفة، على سبيل المثال، يستخدم HTTP 80 منفذًا بينما يستخدم HTTPS 443.

لذا، لحماية كافة المعلومات الحساسة التي يتم تبادلها بينك وبين زائرك، فإنك تحتاج إلى الأوامر التالية:

server {
listen 80;
server_name www.domain.tld;
return 301 https://www.domain.tld$request_uri;
}

4. يقوم Nginx بإعادة توجيه عنوان URL إلى عنوان URL آخر

إذا كنت ترغب في إعادة التوجيه بشكل دائم، أي إعادة توجيه nginx إلى عنوان URL آخر 301، فاستخدم الأمر التالي:

إلى مجال جديد من مجال قديم،

server {
listen 80;
listen 443 ssl;
server_name olddomain.com www.olddomain.com;
return 301 $scheme://www.newdomain.com$request_uri;
}

أو

server {
# Permanent redirect to new URL
listen 443 ssl;
# Add this line to listen on the HTTPS port and enable SSL server_name olddomain.com;
ssl_certificate /path/to/your/ssl_certificate.crt; # Update with the actual path to your SSL certificate
ssl_certificate_key /path/to/your/ssl_certificate_key.key; # Update with the actual path to your SSL certificate key
# Additional SSL settings can be configured here
rewrite ^/(.*)$ https://newdomain.com/$1 permanent;
# Update to use 'https' protocol
}

  • لقد قمنا بإعداد إعادة توجيه لموقعنا على الويب باستخدام أداة تسمى توجيه "إعادة الكتابة" في Nginx.
  • يعد ^/(.*)$ تعبيرًا عاديًا يستخدم كل شيء بعد الشرطة المائلة الأخيرة ( / ) في عنوان URL.
  • على سبيل المثال، إذا حاول شخص ما الوصول إلى http://olddomain.com/index.html ، فسوف يستخدم الجزء index.html .
  • لذلك، إذا كنت ستنتقل إلى http://olddomain.com/index.html ، فسوف يعيد توجيهك بسلاسة إلى http://newdomain.com/index.html .
  • تتمثل الفكرة في إعادة توجيه المستخدمين بسلاسة إلى نفس المحتوى في المجال الجديد.
  • للتأكد من أن إعادة التوجيه هذه دائمة، أضفنا كلمة رئيسية خاصة، "دائم" بعد توجيه rewrite .
  • وهذا يخبر كلاً من المتصفحات ومحركات البحث أن هذا تغيير دائم، وذلك باستخدام ما يسمى رمز الحالة HTTP 301.

5. يقوم Nginx بإعادة التوجيه إلى مجال آخر دون تغيير عنوان URL

لنفترض أنك تريد إعادة توجيه المجال olddomain.com إلى newdomain.com دون تغيير عنوان URL. وهذا يعني أنه عند إدخال olddomain.com، يجب إعادة التوجيه إلى newdomain.com، ولكن يجب أن يظل عنوان URL يعرض olddomain.com.

إليك كيف يمكنك الاقتراب،

server {
listen 80;
server_name olddomain.com;

location / {
proxy_pass http://newdomain.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect off;
}
}

6. إعادة توجيه موقع محدد لـ Nginx

server {
listen 80;
server_name example.com;
return 301 http://newexample.com$request_uri;
}


تحقق من بناء جملة Nginx

للتحقق من صحة بناء جملة nginx، استخدم الأمر التالي:

nginx -t

إذا تبين أن الإخراج فارغ، فهذا يعني أن بناء الجملة صحيح وتحتاج إلى إعادة تشغيل خادم Nginx لجعل هذه التعديلات فعالة.


أعد تشغيل خادم Nginx

لا تنس إعادة تشغيل خادم Nginx الخاص بك لجعل هذه القواعد فعالة باستخدام الأمر:

sudo systemctl restart Nginx


ملخص

كما ذكرنا سابقًا، تبين أن Nginx هو أقوى خادم ويب وأكثره سهولة في الاستخدام والذي يتيح لك إجراء عمليات إعادة التوجيه الدائمة والمؤقتة لـ Nginx بسهولة.

بعد قراءة هذه المدونة، أصبحت تعرف الآن كيفية إنشاء عناوين URL لإعادة التوجيه باستخدام NGINX. ما إذا كان سيتم إعادة توجيه nginx من HTTP إلى HTTPS، أو من مجال إلى مجال آخر، وما إلى ذلك.

لقد تعلمت أيضًا كيف تؤثر عمليات إعادة التوجيه على تصنيفات تحسين محركات البحث الخاصة بك، لذا تأكد دائمًا من استخدام نوع إعادة التوجيه الصحيح.

باستخدام هذه الميزة المفيدة، يمكنك بسهولة تغيير بنية موقع الويب الخاص بك وفقًا للاتجاهات والمتطلبات والامتناع عن الخوف من حركة المرور وفقدان تصنيفات SERP.

تقدم WPOven خيارات الاستضافة المُدارة بواسطة WordPress لمشروع NGINX التالي. اتصل بنا لمناقشة أفضل الخيارات بالنسبة لك.

إذا كان لديك أي استفسارات أو اقتراحات، يرجى إعلامنا بها في قسم التعليقات أدناه:


أسئلة مكررة

كيفية إعادة توجيه عنوان URL في nginx؟

في Nginx، هناك أداة مدمجة متاحة تسمى توجيه "إعادة الكتابة". إنها أداة مفيدة للغاية تجعل عملية إعادة التوجيه سهلة. أفضل ما في الأمر هو أنه لا يوجد شيء خاص عليك القيام به حيال ذلك، فهو موجود تلقائيًا عندما تقوم بتثبيت Nginx جديد.

ما هو رمز إعادة التوجيه لـ Nginx؟

إن nginx متعدد الاستخدامات ويقدم لك نوعين من عمليات إعادة التوجيه، الدائمة التي يكون رمز الاستجابة لها 301، ورمز استجابة التخفيض المؤقت هو 302.

ما هو استخدام NGINX؟

Nginx هو خادم ويب متعدد الاستخدامات وعالي الأداء وخادم وكيل عكسي. يتم استخدامه بشكل شائع للأغراض التالية: خادم الويب ، وخادم الوكيل العكسي ، وموازن التحميل ، وإنهاء SSL/TLS ، والتخزين المؤقت ، وشبكة توصيل المحتوى (CDN) ، وبوابة API ، ودعم WebSocket ، والأمن، والهندسة المعمارية عالية التوفر .