السلام عليكم ورحمة الله وبركاته
كثيرا ما نرى برمجيات وسكريبتات تقوم باعطاء العضو دومين فرعي subdomain باسمه بمجرد اشتراكه بالموقع، كمثال على ذلك مواقع الاستضافة المجانية والبلوجات blogs وما الى ذلك..
اليوم سنتعلم كيفية تنفيذ هذه الطريقة
انتبه: هذا الدرس يحتاج الى اجراء تعديلات بسيطة في السيرفر المستضيف للموقع، وهي المذكورة في الخطوة الأولى، أطلب من المستضيف تنفيذها أو نفذها بنفسك لو لك صلاحيات على السيرفر ولكن كن حذراً...
أيضاً هذه الإجراءات تحتاج مستوى من الخبرة والدراية بأمور السيرفرات، اذا كنت لا يوجد لديك خبرة بها فاطلب ممن لديه الخبرة أن ينفذها لك ولا تقحكم نفسك بمشاكل لا دراية لك بها
مثال عملي:
انشاء دومين فرعي لكل عضو هنا في المنتدى، يؤدي الى ملفه الشخصي..
جرب coder.montadaphp.net أو amine.montadaphp.net مثلاً
الخطوة الأولى: تعديل اعدادات السيرفر:
انتبه: قبل أن تبدأ خذ نسخة احتياطية من الملفات
في مكان آمن بالسيرفركود:/var/named/montadaphp.net.db /usr/local/apache/conf/httpd.conf
قم بتنفيذ الأمر التالي في الشل:
ملحوظة قد يختلف مسار الملف httpd.conf لديك عن هذا المساركود:pico /usr/local/apache/conf/httpd.conf
ويمكنك ايجاده عن طريق طباعة الأمر locate httpd.conf في نافذة الشل
بعد تنفيذ الأمر السابق سيتم فتح الملف للتحرير في البرنامج الشهير pico
ابحث عن السطر التالي في الملف:
قم باضافة في نهايته *.montadaphp.netكود:ServerAlias montadaphp.net www.montadaphp.net
بحيث يصبح كالتالي:
احفظ الملف واغلقهكود:ServerAlias montadaphp.net www.montadaphp.net *.montadaphp.net
ملحوظة: استبدل montadaphp.net باسم الدومين لك
قم بنفيذ الأمر التالي في الشل:
سيتم ايضاً فتح نافذة لتحرير ملف الدومينكود:pico /var/named/montadaphp.net.db
أضف السطر التالي الى الملف:
واحفظ الملف واغلقهكود:*.montadaphp.net. IN A 66.66.66.66
وأعد تشغيل السيرفر
ملحوظة:استبدل montadaphp.net باسم الدومين لك و 66.66.66.66 برقم الآي بي سواء كان مشترك أو مستقل
بهذا تكون قد انتهت الخطوة الأولى والخاصة باعدادات السيرفر
الخطوة الثانية: انشاء ملف [l].htaccess[/l] ووضعه في الموقع
قم بانشاء ملف بالاسم [l].htaccess[/l] وضع فيه المحتويات التالية:
احفظ الملفكود:RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. RewriteCond %{HTTP_HOST} ^(.+)\.montadaphp\.net RewriteRule ^(.*) http://www.montadaphp.net/member.php?username=%1 [R=301,L]
انتهى
منقول http://www.montadaphp.net/showthread.php?t=905