اذهب إلى المحتوى

السؤال

نشر

انا دلواقتي عندي موقعين واحد بمحتوي عربي و التاني بالمحتوي الانجليزي بس الاتنين بنفس الاسم و الانجليزي بيستخدم sup domin  الخاص بالعربي فا في حل ان انا امنع  العربي يظهر في الدول الاجنبية ؟

Recommended Posts

  • 0
نشر

 هناك عدة طرق لمنع موقع اللغة العربية من الظهور في الدول الأجنبية:

  • استخدام خاصية المجالات الفرعية (Subdomains) - كما ذكرت، يمكنك استخدام مجال فرعي منفصل للموقع الإنجليزي مثل en.yourdomain.com بينما يبقى الموقع العربي على yourdomain.com. ثم تقوم بتوجيه الزوار حسب الدولة إلى المجال المناسب.
  • استخدام الـ Geo IP - باستخدام خدمات مثل MaxMind ، يمكنك اكتشاف الموقع الجغرافي للزائر وتوجيهه بناء على ذلك.
  •  إعدادات الخادم - يمكنك استخدام إعدادات الخادم مثل ملفات .htaccess لحظر الوصول للمحتوى العربي بناءً على موقع الزائر.
  • الطريقة الأخيرة تتضمن توجيه المستخدمين إلى الموقع المناسب استنادًا إلى لغة المتصفح أو إعدادات اللغة الخاصة بهم. هذه الطريقة تعتمد على تقنية تسمى "تفضيلات اللغة" (Language Preferences) التي يوفرها معظم المتصفحات الحديثة.

إليك خطوات عامة لتنفيذ هذه الطريقة:

  • تحقق من لغات المتصفح المدعومة: قم بفحص رأس الطلب (Request Header) الخاص بالمتصفح لتحديد اللغات التي يفضلها المستخدم. يمكنك الوصول إلى هذه المعلومات باستخدام لغة البرمجة المستخدمة في تطوير الموقع (مثل PHP، Python، Node.js، إلخ) من خلال قراءة رأس الطلب.
  • قم بتحويل اللغة المفضلة إلى قيمة مفتاح: كل لغة مفضلة لديها قيمة مفتاح تستخدم للتعرف عليها. على سبيل المثال، اللغة الإنجليزية تتمثل في "en" والعربية تتمثل في "ar". يجب عليك مطابقة قيم المفتاح مع اللغات المدعومة في الموقع الخاص بك.
  • قم بتوجيه المستخدم إلى الموقع المناسب: عندما يصل المستخدم إلى موقعك، قم بفحص القيمة المفتاحية للغة المفضلة التي تم الحصول عليها من رأس الطلب. اعتمادًا على هذه القيمة، قم بتوجيه المستخدم إلى الموقع العربي إذا كانت اللغة المفضلة "ar"، أو إلى الموقع الإنجليزي إذا كانت اللغة المفضلة ليست "ar".
  • توفير واجهة واضحة للمستخدمين: يجب أن يكون لديك واجهة مستخدم واضحة تسمح للمستخدمين بتبديل المواقع يدويًا إذا كانت التوجيهات غير صحيحة أو إذا كانوا يرغبون في الوصول إلى الموقع الآخر.

قد تختلف تفاصيل تنفيذ هذه الطريقة اعتمادًا على لغة البرمجة والإطار الذي تستخدمه في تطوير الموقع. ومن المهم أن تتعامل مع هذه الطريقة بعناية للتأكد من أن المستخدمين يصلون إلى الموقع المناسب بناءً على تفضيلاتهم اللغوية والجغرافية.

  • 0
نشر

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

RewriteCond %{HTTP_ACCEPT_LANGUAGE} ^en-US$ [NC]
RewriteRule ^.*$ https://www.yourenglishwebsite.com/ [R=301,L]

مع استبدال https://www.yourenglishwebsite.com باسم الدومين الذي تريد التوجيه إليه.

وإذا كانت لغة الزائر هي en-US (الإنجليزية الأمريكية)، فإنه سيقوم بإعادة توجيه الزائر إلى موقع ويب باللغة الإنجليزية.

لكن في حال كان المستخدم عربي ويستخدم لغة إنجليزية للمتصفح فستحدث مشكلة بسبب عملية التحويل.

لذلك من الأفضل الإعتماد على خاصية IP geolocation من Cloudflare:

  1. تأكد من تسجيل الدخول إلى حسابك على Cloudflare.
  2. انتقل إلى قسم "Workers" في لوحة التحكم.
  3. انقر على "Create a Worker" أو ما يماثل ذلك.
  4. قم بكتابة الكود البرمجي الذي يقوم بالتحقق من موقع الزائر باستخدام خدمة IP Geolocation ويُعيد التوجيه وفقًا لذلك.

فيما يلي مثال تقريبي:

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  const response = await fetch('https://api.cloudflare.com/client/v4/zones/YOUR_ZONE_ID/requests', {
    headers: {
      'X-Auth-Key': 'YOUR_API_KEY',
      'X-Auth-Email': 'YOUR_EMAIL'
    }
  })
  
  const data = await response.json()
  const countryCode = data.countryCode // استخراج البلد من البيانات المسترجعة

  if (countryCode === 'US') {
    // إعادة توجيه إلى الموقع الإنجليزي
    return Response.redirect('https://www.yourenglishwebsite.com', 301)
  } else {
    // إعادة توجيه إلى الموقع العربي أو أي موقع آخر
    return Response.redirect('https://www.yourarabicwebsite.com', 301)
  }
}

وعليك بتغيير "YOUR_ZONE_ID" و "YOUR_API_KEY" و "YOUR_EMAIL" إلى قيمك الفعلية.

الكود أعلاه يعتمد على توفر خدمة IP Geolocation من Cloudflare. إذا كنت تستخدم خدمة خارجية للتحقق من موقع الـ IP، يمكنك تكييف الكود وفقًا لذلك.

بعد كتابة الكود، انقر على "Save and Deploy" لنشر العامل وتفعيله.

وتستطيع البحث عن How To Setup Geo Redirection In Cloudflare.

وهناك إضافة لووردبريس تقوم بذلك IP2Location Redirection.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...