فهرس المقال
Toggle1. إعادة التوجيه الدائم (301 Redirect)
- الوصف: يتم استخدام هذا النوع عندما يتم نقل المحتوى بشكل دائم إلى عنوان URL جديد. يخبر المتصفحات ومحركات البحث أن الرابط القديم لم يعد صالحًا، وأنه يجب الاعتماد على الرابط الجديد.
- المشكلة: إذا قمت بتغيير اسم صفحة أو نقلت الموقع إلى نطاق جديد، فسيظل الزوار يحاولون الوصول إلى الروابط القديمة.
- الحل:[sourcecode language=”html”]
Redirect 301 /old-page.html <a target=”_new” rel=”noopener”>https://www.yourdomain.com/new-page.html</a>
[/sourcecode]هذا الكود يقوم بإعادة توجيه أي طلب للصفحة old-page.html إلى new-page.html بشكل دائم.
2. إعادة التوجيه المؤقت (302 Redirect)
- الوصف: يُستخدم لإعادة التوجيه المؤقت عندما يكون الرابط القديم غير متاح لفترة مؤقتة. يخبر المتصفحات ومحركات البحث أن الرابط قد يعود لاحقًا.
- المشكلة: عندما يتم تحديث صفحة لفترة قصيرة أو خلال صيانة.
- الحل:[sourcecode language=”html”] Redirect 302 /temporary-page.html <a target=”_new” rel=”noopener”>https://www.yourdomain.com/maintenance-page.html</a> [/sourcecode]
هنا، يتم توجيه الزوار مؤقتًا إلى maintenance-page.html خلال فترة الصيانة.
3. إعادة التوجيه من HTTP إلى HTTPS
- الوصف: يُستخدم لتحويل جميع الزيارات من HTTP إلى HTTPS لتأمين الاتصال.
- المشكلة: إذا كان الموقع يدعم HTTPS ولم يتم إجبار الزوار على استخدامه، فقد يظل الزوار يصلون إلى النسخة غير الآمنة.
- الحل:[sourcecode language=”html”] RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] [/sourcecode]
هذا الكود يقوم بإعادة توجيه جميع الزوار الذين يستخدمون HTTP إلى النسخة الآمنة HTTPS.
4. إعادة التوجيه من www إلى non-www أو العكس
- الوصف: يساعد في توحيد الروابط الخاصة بالموقع ليكون الوصول دائمًا إلى شكل واحد (إما مع www أو بدونها).
- المشكلة: وجود محتوى مكرر إذا كانت نفس الصفحة متاحة بكلتا الطريقتين.
- الحل لتحويل من www إلى non-www:[sourcecode language=”html”] RewriteEngine On RewriteCond %{HTTP_HOST} ^<a href=”http://www.yourdomain.com” target=”_new” rel=”noopener”>www.yourdomain.com</a> [NC] RewriteRule ^(.*)$ <a target=”_new” rel=”noopener”>https://yourdomain.com/$1</a> [R=301,L] [/sourcecode]
- الحل لتحويل من non-www إلى www:[sourcecode language=”html”] RewriteEngine On RewriteCond %{HTTP_HOST} ^yourdomain.com [NC] RewriteRule ^(.*)$ <a target=”_new” rel=”noopener”>https://www.yourdomain.com/$1</a> [R=301,L] [/sourcecode]
5. إعادة توجيه النطاق بالكامل
- الوصف: يُستخدم لنقل جميع صفحات الموقع من نطاق قديم إلى نطاق جديد.
- المشكلة: إذا قمت بتغيير اسم النطاق، فأنت بحاجة لنقل الزوار ومحركات البحث إلى النطاق الجديد دون فقدان الزيارات أو ترتيب الموقع.
- الحل:[sourcecode language=”html”] RewriteEngine On RewriteCond %{HTTP_HOST} ^old-domain.com [NC] RewriteRule ^(.*)$ <a target=”_new” rel=”noopener”>https://new-domain.com/$1</a> [R=301,L] [/sourcecode]
6. إعادة توجيه بناءً على شروط معينة
- الوصف: يمكنك إعادة التوجيه بناءً على معايير مثل نوع الجهاز (محمول أو مكتبي) أو عنوان IP.
- المشكلة: إذا كنت تريد توجيه الزوار إلى نسخة مخصصة من الموقع استنادًا إلى الأجهزة أو الموقع الجغرافي.
- الحل لإعادة التوجيه للأجهزة المحمولة:[sourcecode language=”html”] RewriteEngine On RewriteCond %{HTTP_USER_AGENT} “iPhone|Android” [NC] RewriteRule ^(.*)$ <a target=”_new” rel=”noopener”>https://m.yourdomain.com/$1</a> [R=302,L] [/sourcecode]
7. إعادة توجيه صفحات الخطأ المخصصة
- الوصف: يمكنك إنشاء صفحات مخصصة لأخطاء HTTP الشائعة مثل 404 (الصفحة غير موجودة) أو 500 (خطأ في الخادم).
- المشكلة: عندما يزور المستخدمون روابط غير صالحة أو يتعرض الموقع لمشكلات داخلية، فمن الأفضل تقديم صفحة خطأ مخصصة لتوجيه المستخدمين.
- الحل:[sourcecode language=”html”] ErrorDocument 404 /custom-404.html ErrorDocument 500 /custom-500.html [/sourcecode]
هنا، سيتم توجيه المستخدمين إلى صفحات مخصصة عندما تحدث أخطاء 404 أو 500.
8. إعادة توجيه الملفات القديمة إلى الجديدة
- الوصف: يتم استخدامه عندما يتم تغيير هيكل الملفات على الموقع، مثل نقل الملفات إلى مجلدات مختلفة.
- المشكلة: إذا تم نقل الملفات إلى مواقع جديدة، سيؤدي ذلك إلى تعطل الروابط القديمة.
- الحل:[sourcecode language=”html”] Redirect 301 /old-folder/old-file.html /new-folder/new-file.html [/sourcecode]
هنا، يتم إعادة توجيه old-file.html الموجود في المجلد القديم إلى new-file.html في المجلد الجديد.
9. إعادة التوجيه بناءً على لغة المتصفح
- الوصف: يمكن استخدام .htaccess لتوجيه الزوار تلقائيًا إلى نسخة معينة من الموقع بناءً على لغة المتصفح.
- المشكلة: إذا كان الموقع متعدد اللغات، يمكنك توجيه الزوار إلى النسخة الصحيحة من الموقع وفقًا للغة المتصفح.
- الحل:[sourcecode language=”html”] RewriteEngine On RewriteCond %{HTTP<div> </div>} ^fr [NC] RewriteRule ^$ /fr/ [L,R=301] [/sourcecode]
هذا الكود يقوم بتوجيه الزوار إلى النسخة الفرنسية /fr/ إذا كانت لغة المتصفح الفرنسية.
10. إعادة توجيه استنادًا إلى عنوان IP
- الوصف: يمكن توجيه الزوار إلى صفحات مختلفة بناءً على عناوين IP الخاصة بهم.
- المشكلة: إذا كنت ترغب في توجيه الزوار من دول معينة إلى صفحات مخصصة.
- الحل:[sourcecode language=”html”] RewriteEngine On RewriteCond %{REMOTE_ADDR} ^123.456.789.000$ RewriteRule ^(.*)$ /custom-page.html [L] [/sourcecode]
هنا، إذا كان عنوان IP للزائر هو 123.456.789.000، فسيتم توجيهه إلى custom-page.html.
11. إعادة التوجيه حسب نوع المحتوى
- الوصف: يمكن تخصيص إعادة التوجيه بناءً على نوع الملفات التي يتم الوصول إليها.
- المشكلة: إذا كان لديك محتويات متنوعة وتريد التحكم في كيفية تقديمها.
- الحل:[sourcecode language=”html”] RewriteEngine On RewriteRule .(pdf|doc)$ /download-page.html [L] [/sourcecode]
هذا الكود يقوم بإعادة توجيه أي ملفات PDF أو DOC إلى صفحة download-page.html.
12. إعادة التوجيه الشرطي استنادًا إلى متغيرات الخادم
- الوصف: يمكن تنفيذ إعادة توجيه بناءً على متغيرات معينة مثل User-Agent (نوع المتصفح) أو Request Method (طريقة الطلب).
- المشكلة: إذا كنت تحتاج إلى تقديم محتوى مخصص استنادًا إلى تفاصيل الطلب.
- الحل لإعادة التوجيه حسب نوع المتصفح:[sourcecode language=”html”] RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^Mozilla [NC] RewriteRule ^(.*)$ /mozilla-users.html [L] [/sourcecode]
هنا، إذا كان المتصفح يحتوي على كلمة Mozilla في اسم User-Agent، سيتم توجيه الزائر إلى mozilla-users.html
Views: 1