[شرح] : حل مشكلة استبدال علامة ؟ بـ %3f وعلامة = بـ %3d فى لينكات المنتدى (1 Viewer)

bichou

Well-Known Member
السلام عليكم اعضاء موقع ترايدنت

عدت اليكم من جديد بشرح حصرى لمشكلة بسيطة فى المنتدى تكاد تكون مش واخد بالك منها ولكنها تفقدك بعض الزوار فى الموقع وذلك لعدم ضبط البارامترز Parameters problem

أولا : احب اعرضلكم ايه اللى انا اقصده من العنوان وايه شكل المشكلة واسبابها

بالنسبة لمشكلة البارامترز فى لينك الموضوع ان علامة الاستفهام ؟ بتتحول فى بعض المتصفحات او المواقع الى المقطع %3F وعلامة يساوى تتحول الى %3D

ليكون هذا الرابط

http://www.example.com/vb/showthread.php?t=502

يتحول لهذا الشكل

http://www.example.com/vb/showthread.php?t=502

او هذا الشكل




http://www.example.com/vb/showthread.php?t=502

ويظهر هذا العيب كثيرا اذا كان موقعك يعتمد على الصور فى معظم مواضيعه ولهذا تاتى معظم هذه اللينكات من بحث جوجل صور فعندما تبحث فى جوجل صور عن تيشرتات مثلا وانت لديك صورة فى اول سطور البحث فسيدخل عليها الزائر فاذا كان محرك البحث عنده باللغة العربية فتحدث هذه المشكلة ولكن ليس دائما ويتحول رابط موضوعك عند الدخول عليه الى احد الروابط الثانى او الثالث كما بالاعلى ولهذا يعطيه المنتدى هذا الخطأ

رمز PHP:
لقد حددت الموضوع خاطئ. إذا أتبعت رابط صحيح, الرجاء أبلغ مدير الموقع


كما فى هذه الصورة



ولهذا يحتسب موقعك كل الزوار على جوجل اناليتيك او الهاي ستات او اي سكربت عداد للزوار ولا تجد اي مشكلة بعدد زوارك ولكنك تفقد ميزتين وهي ثبات الزائر فى الموقع والثانية تفقد ارباح اعلاناتك الموجوده داخل الموضوع وتاخذ ارباح اعلانات الهيدر فقط والتى من الاصل تصبح خطر من اخطار حظر ادسنس ان اعلاناتك تظهر فى صفحات دون محتوى

ومع ان رابطك الاصلى

http://www.example.com/vb/showthread.php?t=502

يعمل صحيحا وبكل قوة ولكن الرابط المزيف الجديد لا يحول عليه وايضا تظهر رسالة لك فى ادسنس اخطاء زحف ويضع لك امثلة لهذه الروابط

http://www.example.com/vb/showthread.php?t=502

ويخبرك انها تؤثر على ارباحك وبالفعل تخسر زوار بسببها ولذلك وجب علينا جميعا التحويل من الرابط الخطأ الى الرابط الصحيح وستجد فرقا كبيرا فى الارباح اذا كان موقعك مشهورا

الحل المثالى لتظبيط البارامترز فى المنتدى عن طريق الهتكس

نتجه الان للهتكس او .htaccess الخاص بالمنتدى وبالتحديد الموجود داخل المسار example.com/vb/

نفتح الهتكس من الاف تى بى ونضيف هذه القواعد الثلاثة له ليقوم بالتحويل

رمز PHP:
# Redirect to remove query string characters from folder
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*showthread\.php\%3[fF]t\%3[dD]([^\ ]+)\ HTTP/
RewriteRule ^showthread\.php http://www.example.com/%1showthread.php?t=%2 [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*showthread\.php\?t\%3[dD]([^\ ]+)\ HTTP/
RewriteRule ^showthread\.php http://www.example.com/%1showthread.php?t=%2 [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^/]+/)*showthread\.php\%3[fF]t\=([^\ ]+)\ HTTP/
RewriteRule ^showthread\.php http://www.example.com/%1showthread.php?t=%2 [R=301,L]


لا تنسى استبدال كلمة example.com باسم موقعك والاستبدال سيكون ثلاث مرات فقط

شرح الرولز السابقة

الاول يقوم بتحويل الروابط التى تحولت فيها علامة الاستفهام واليساوى سويا لاصلهما
والثانى يقوم بتحويل الروابط التى تحولت فيها علامة اليساوى فقط
والثالث يقوم بتحويل الروابط التى تحولت فيها علامة الاستفهام فقط

انتظر تجربتكم واخبارنا بالنتائج ولتتاكد من عملها جرب الدخول على هذا الرابط

http://www.example.com/vb/showthread.php?t=1

اذا تحولت الرمز الى علامة اليساوى ستكون قد قمت بعملها بشكل صحيح


ملحوظة : من يستخدم هاك الفى بى سيو محول الروابط الى html فلن يحتاج لهذا الدرس لان الروابط ليس بها ? او =

لا تنسونى من صالح الدعاء
وشكرا
 
أعلى