الخميس، 27 ديسمبر 2012

الدوماين - Domain


ما هو الدوماين؟


الدوماين أو اسم النطاق هو نظام على شبكة الإنترنت
والاسم المختصر لهذا النظام هو( DNS). إن تقنية هذا النظام مشابهة لدليل الهاتف العادي الذي نكتب فيه أسماء الأشخاص الذين نتصل بهم مع أرقام هواتفهم ,فعندما نريد الاتصال بشخص ما علينا سوى فتح الدليل على الصفحة التي تحوي اسم الشخص ومن ثم قراءة رقم الشخص والاتصال به. بالنسبة لشبكة الإنترنت فإن طريقة التخاطب'KLO بين الأجهزة تعتمد اعتماداً مباشراً على العنوان الرقمي لبروتوكول الإنترنت (IP Address) ,هذا العنوان مكون من (32) خانة ثنائية في الإصدار الرابع (IP Version 4) يمكن تمثيلها على الشكل التالي (208.77.188.166) مع ملاحظه انها تكتب بالنظام العشري .
وعلى (128)خانة ثنائية في الإصدار السادس (IP Version 6) يمكن تمثيلها على الشكل التالي (2001:db8:1f70:999:de8:7648:6e8).LLML مع ملاحظه انها تكتب بالنظام السادس عشري.
فعندما يريد جهاز الاتصال مع جهاز آخر فعليه معرفة العنوان الرقمي لهذا الجهاز لتبادل المعطيات معه. قبل استخدام نظام DNS كانت عملية إنشاء الأسماء المعرفة للأجهزة تتم من خلال ملفات تسمى Host File، ولكن مع زيادة عدد الأجهزة التي تتضمنها الشبكة ثم تصميم نظام DNS لاستبدال ملفات الـ Host بقاعدة بيانات موزعة (لى أجزاء يتم إدارتها محليا والوصول إليها عن طريق الشبكة. 


نظام أسماء النطاقات (DNS) اختصار لجملة Domain Name System هو نظام يخزن معلومات تتعلق بأسماء نطاقات في قاعدة بيانات موزعة على الإنترنت. يقوم خادم اسم النطاق بربط العديد من المعلومات بأسماء النطاقات، ولكن وعلى وجه الخصوص يخزن عنوان الأي بي المرتبط بذلك النطاق.
بمعنى آخر هو نظام يقوم بترجمة أسماء النطاقات من كلمات إلى أرقام تعرف باسم (IP Address).
فكما أن الهواتف عبارة عن أرقام، فإذا أردت الاتصال بأي هاتف يجب معرفة رقمه، كذلك في عالم الإنترنت، إذا أردت الاتصال بأي موقع عليك معرفة الـIP الخاص بهذا الموقع، ولكن بالنسبة للهاتف، هناك ما يسمى بخدمة الاستعلامات، فإذا كنت تعرف اسم أحد الأشخاص، تستعمل هذه الخدمة للحصول على رقمه. والأمر نفسه بالنسبة لخادم الإنترنت، فهناك ما يسمى بالـDomain Names، أو أسماء النطاقات، حيث أنه يكفي للاتصال بموقع من مثل ويكيبيديا، أن تعرف اسم النطاق الخاص بهذا الموقع، في هذه الحالة هو wikipedia.org، عندما تكتب هذا العنوان في المتصفح الخاص بك، فإن الخطوة الأولى التي يقوم بها متصفحك هي الاستعلام عن الـIP الخاص بهذا الموقع، ويتم هذا عبر الـDNS، أو نظام أسماء النطاقات، وهذا عن طريق خادوم يترجم أسماء النطاقات، إلى عناوين الـIP، اللازمة للحاسوب كي يقوم بالاتصال مع الموقع.

يعتبر نظام أسماء النطاقات مفيداً لعدة أسباب. أكثرها وضوحا، أنه يجعل من الممكن استبدال عناوين الأي بي الصعبة التذكر (مثل 207.142.131.206) بأسماء نطاقات سهلة التذكر (مثل wikipedia.org)، وهذا يسهل على البشر التعامل مع عناوين الشبكة وعناوين البريد الإلكتروني. كما أن النظام يسمح بإنشاء أسماء معترف بها ويمكن الوصول إليها دون الاتصال مع التسجيل المركزي في كل مرّة.


كيف يسمي ال (DNS) النطاقات

 تعتمد تقنية التسمية في النطاق على عملية التجميع الهرمي للأسماء حيث تعرف النطاقات Domains عدة مستويات مختلفة في بنية هرمية، وهذه المستويات هي:
  • النطاق الجذري (Root Domain): يمثل أعلى مستوى في البنية الهرمية ويشار إليه بنقطة (.)
  • مستوى القمة للنطاقات (Top-Level Domains): يمثل هذا المستوى باختصارات من رمزين أو ثلاثة، تعبر عن نوع المنظمة، أو الموقع الجغرافي، أو عن أي شيء آخر والجدول التالي يعرض بعض الأمثلة عن الاختصارات التي تمثل مستوى القمة Top level Domains.
يمكن لنطاقات المستوى الأعلى Top Level Domain أن تحتوي على نطاقات المستوى الثاني Second Level Domains، بالإضافة إلى المستخدمين.
  • المستوى الثاني للنطاقات (Second Level Domains): يمكن أن يحتوي هذا المستوى على مستخدمين، وعلى نطاقات أخرى تدعى Sub domains
  • أسماء المضيفين(Host Names): تكون أسماء المضيفين إشارة إلى كمبيوترات موجودة على الإنترنت أو في شبكة خصوصية وتكون أسماء المضيفين دائماً في أقصى اليسار ضمن الاسم.
في فيودكس نحن نوفر لك خدمة حجز الدوماين أو اسم النطاق الخاص بك أو بشركتك,يمكنك اختيار الاسم و حجزه ليكون خصيصا لك  لمدة عام أو أكثر و تستخدمه كعنوان لموقعك الإلكتروني أو في اسم بريدك الإلكتروني.

للمزيد من المعلومات قم بزيارة موقعنا: www.fudex.com.sa


الأربعاء، 26 ديسمبر 2012

Drupal 7 Guide -1

Adding content on Drupal 7


 this example you will learn how to add content to a Drupal 7 site.
Before we begin: Make sure you are logged in as a user who has the right to create content – ask your system administrator if you are not sure; otherwise, some of the fields you need to select will not be visible.
  1. Select Add content from the front page (either in the Navigation menu or one of the menus un the header).

    Add content

  2. This brings up a screen asking what type of content you wish to add.


    Select Article

  3. Select Article. The only major difference between Basic Page and Article is that you have the ability to upload an image when creating an Article; a Basic Page is for a static page.
  4. A form will appear allowing you to enter information for your Article.

    Add Content Form

  5. Enter a Title for the page in the Title text box: for example, Test Article.
  6. In the Body area enter some text. If you have an already written block of text for your site, you can just cut and paste it into this area.
  7. Text can include limited (recommended) or full HTML markup. Generally, you are better off from a security standpoint to use the default (Filtered HTML).
  8. Click on the Publishing options link and check what options are selected there.
  9. Checking Published will make sure that the content gets published to the site as soon as it is Saved, while Promoted to front page will make sure that this content gets published on your site’s homepage. For content for your homepage, check both of these.
  10. Click the Save button.
  11. You should now see your post.


    Final Test Article

    Source: Drupal 

الثلاثاء، 25 ديسمبر 2012

كيف يعمل دروبال -الجزء الثالث


آلية عمل دروبال

-تخديم الطلبات     Serving a Request     
يعتبر وجود إطارعمل يمكننا من معرفة ما الذي يحدث عندما يتلقى دروبال طلب ما , امر مهم جدا ومفيد. لذلك سنقوم ضمن هذا الجزء بتوفير خطوات سريعة عما يحدث عند تلقي طلب ما ضمن دروبال.
إذا كنت ترغب في أن تتتبع هذا الموضوع بنفسك , استخدم “مصحح اخطاء” debugger  جيد, وابدأ من صفحة index.php  , وهي المكان الاساسي الذي يتلقى في دروبال اغلب طلباته.
إن الخطوات المذكورة ضمن هذا المقطع لعرض صفحة ويب بسيطة ,قد تبدو معقدة, ولكنها تعج بالمرونة.

-دور مخدم الويب     The Web Server’s Role         
يعمل دروبال على مخدم ويب ,وغالبا apache  . إذا كان مخدم الويب يأخذ بعين الاعتبار ملف .htaccess في دروبال , عندها سيتم تهيئة بعض إعدادات PHP. ويتم فحص الروابط URL. تقريباً, كل الاستدعاءات لدروبال تمر من خلال صفحة index.php , على سبيل المثال , إن استدعاء لصفحة http://example.com/foo/bar  يخضع للإجرائيات التالية :
  1. تقوم قواعد mode_rewrite الموجودة في .htaccess الخاص بدروبال ,بالتدقيق على كل الروابط القادمة URL , وتقوم بفصل المسار الأساسي base URL عن المسار المتبقى.  في مثالنا , المسار هو التالي : foo/bar.
  2. يتم اسناد المسار المتبقى إلى معامل الاستعلام q ضمن ال URL.
  3. وبالتالي فإن المسار الناتج URL  هو التالي : http://example.com/index.php?q=foo/bar
  4. يعامل دروبال foo/bar  على انه مسار داخلي ضمن دروبال , وتبدأ المعالجة ضمن صفحة index.php.
وكنتيجة لهذه المعالجة , فإن دروبال يقوم بمعالجة كل من http://example.com/index.php?q=foo/bar
و http://eample.com/foo/bar  بنفس الطريقة, وذلك لأن المسار هو نفسه “بشكل داخلي ضمن دروبال” في كلا الحالتين . وهذا يُمكن دروبال من استخدام المسارات URLs بدون وجود المحارف المضحكة ضمنهم. ويشار إلى تلك المسارات URLs بالمسارات النظيفة (لانها خالية من المحارف الغير مرغوب فيها ضمن المسار).
في مخدمات ويب اخرى, مثل Microsoft IIS , يمكن تحقيق المسارات النظيفة clean URLs باستخدام وحدة Windows Internet Server Application Programming Interface(ISAPI)  مثل ISAPI Rewrite.
إن IIS الاصدار 7 وما فوق تدعم بشكل مباشر المسارات النظيفة. إذا كنت تشغّل موقعك على ISS 7  او ما فوق , فيجب عليك عندها ان تتحقق من ملف   web.config الذي تستطيع من عنده تفعيل المسارات النظيفة , نستطيع حماية ملفاتنا التي لا نرغب المتطفلين من الوصول إليها مثل .install, .module , .test, .theme, .profile, .info,  الخ

-إجرائية التمهيد     The Bootstrap Process         
يقوم دروبال بعملية تمهيد لنفسه مع كل طلب وذلك عبر الذهاب ضمن سلسلة من المراحل التمهيدية . تم تعريف هذه المراحل ضمن ملف bootstap.inc , وتمضي قدما عبر المراحل الموضحة ضمن الجدول 1-1
Purpose
Phase
Set global variables used through|out the bootstrap process
Configuration
Initializes the database system and registers autoload functions
Database
Loads system variables and all enabled bootstrap modules
Variables
Initializes session handling
Sessions
Invokes hook_boot(), initializes the locking system, and sends the default HTTP headers
Page Header
Initializes all the defined languages types
Languages
The final phase: Drupal is fully loaded by now .This phase validates and fixes the input data.
Full

-معالجة الطلبات     Processing a Request     
إن تابع الاستدعاء   callback function يقوم بأي عمل مطلوب منه لمعالجة وتجميع المعطيات المطلوبة لتنفيذ الطلب request. على سبيل المثال , إذا كان قد تم تلقي الطلب التالي لاستعراض المحتوى : http://example.com/q=node/3 فإن هذا المسار URL تتم مطابقته مع التابع node_page_view() الموجود ضمن node.module . وستجري معالجات اخرى من ضمنها استعادة معطيات هذه العقدة من قاعدة المعطيات ووضعها ضمن بنية المعطيات. وبعدها يأتي وقت ال theme (اي تطبيق السمات المناسب – ستايل)

-تطبيق السمات المناسبة على المعطيات – ستايل     Theming the Data
إن عملية تطبيق السمات المناسبة على المعطيات تتضمن نقل المعطيات التي تم استرجاعها ومعالجتها , او إنشائها ضمن HTML  ( أو XML أو اي تنسيق خرج اخر ).
يقوم دروبال باستخدام الثيم (الستايل) الذي قام المدير باختياره ليعطي الصفحة المظهر المناسب.  ثم يتم ارسال الخرج الناتج إلى مستعرض الويب ( or other HTTP client  ) .

كيف يعمل دروبال -الجزء الثاني


مكونات النظام

-الواجهة الإدارية   Administrative Interface   
تتميز الواجهة الإدارية بأنها مدمجة مع بقية الموقع , اي كجزء منه .
ويمكن بسهولة الوصول لكافة الوظائف والخدمات الإدارية عبر القوائم الإدارية التي تظهر في أعلى الصفحة عند الدخول كمدير للموقع site administrator

-الوحدات     Modules  
يعتبر دروبال بمثابة إطار عمل وحدوي – ههههه إن جاز التعبير – اي ان بنيته قائمة على اساس الوحدات modular framework . حيث ان الوظائف والخدمات مضمنة ضمن وحدات modules  , والتي من الممكن تفعيلها أو تعطيلها .
يتم اضافة ميزات وخدمات جديدة لدروبال عبر تفعيل وحدات موجودة للتو , او عبر تثبيت وحدات جديدة تمت كتابتها من قبل أعضاء في مجتمع دروبال drupal community, أو حتى عبر كتابة وحدات جديدة .
وبالتالي فإن اي موقع بإمكانه ان يعمل بالحد الأدنى من الوحدات في حال لم يكن بحاجة لبقية الوحدات الاضافية , واما المواقع التي تستلزم وظائف اخرى بإمكانها اضافة الوحدات التي تحوي هذه الوظائف وتفعيلها بسهولة. تم توضيح هذه الامر عبر الرسم التوضيحي رقم 1-3
enabling-additional-modules
enabling-additional-modules
يمكن توسيع الوحدات عبر اضافة انماط جديدة من المحتوى new content types  مثل recipes , blog posts or files
او يمكن اضافة سلوكيات لهذه الوحدات مثال : تنبيه بريدي  e-mail notification  …
ويتم استدعاء وظائف الوحدات modules functionality  من قبل اطار العمل framework في الوقت المناسب عبر ما يعرف ب hooks  (السنانير و مفردها سنارة ) والتي ساترجمها بالاحداث , لانها بالنهاية تمثل انقداح حدث ما , اي حدوثه.

-الأحداث – السنانير  Hooks   
يمكننا أن نتخيل السنارة (الحدث ) على انه بمثابة حدث داخلي ضمن دروبال – لذلك ساتخذ كلمة حدث كترجمة ل Hook –
وتسمى بالاستدعاءات callbacks
ملاحظة : في الواقع فإن ال hooks  لا تمثل استدعاءات بمعنى الكلمة , لان ال hooks  تُهيكَل وتبنى اعتمادا على معايير تسمية الوظائف function – naming conventions  , وليس عبر تسجيلهم بواسطة متنصت   listiener (كما هو الحال في بعض لغات البرمجة).

سنوضح هنا آلية عمل الأحداث hooks عبر مثال بسيط :
لنفترض بأن مستخدم ما قام بالدخول إلى موقع دروبال , خلال الفترة الزمنية التي تتم بها عملية الدخول يقوم دروبال بقدح حدث hook_user_login . وهذا يعني بأن اي تابع function  يتطابق اسمه مع عُرف التسمية module name + hook name  سوف يتم استدعائه , مثلا إذا كنا في وحدة التعليقات comment module  عندها سيتم استدعاء التابع (الوظيفة ) comment_user_login , وإذا كنا في وحدة العقدة node module  عندها سيتم استدعاء التابع node_user_login  … وهلم جرة.
بفرض لدينا وحدة ما , وليكن اسمها spammy ,وظيفتها ارسال بريد للمستخدم عند كل دخول للموقع ,عندما نريد كتابة تابع (وظيفة ) للحدث  Hook_user_login  عندها يتم استبدال كلمة Hook باسم الوحدة , وبالتالي يكون اسم التابع  spammy_user_login  وسيتم استدعائه بشكل اوتوماتيكي عند كل دخول للمستخدم .
حيث ضمن محتوى هذا التابع نضع الترميز code  الذي ينفذ عملية ارسال البريد الالكتروني للمستخدم مع كل دخول.

-الثيمات     Themes   
عندما نقوم بإنشاء صفحة انترنت ونريد ارسالها للمستعرض يكون لدينا اهتمامين اساسين :
  1. تجميع البيانات المناسبة
  2. وترميز المعطيات لتعرض على الويب
وتعتبر طبقة الثيم هي المسؤولة عن إنشاء HTML (أو JSON, XML ,etc ) التي سيقوم المستعرض بتلقيها.
  يعتبر  (PHP Template ) بمثابة محرك القوالب الاساسي لدروبال templating engine, وبإمكانك ان تستخدم بدلاً عنه Easy Template System (ETS) .
أغلب المطورين الذين يرغبون بإنشاء ثيمات جديدة في دروبال , يستخدمون محرك القوالب الاساسي الذي يأتي مع دروبال .
هنالك شيء مهم يجب تذكره بأن دروبال يشجع ويؤكد على فصل  المحتوى عن الترميز.
يوفر دوربال عدة اساليب لتمكن المطورين من تعديل او تكيف المظهر الخارجي للموقع يما يناسبهم. اسهل طريقة لذلك عبر استخدام ملفات التنسيق cascading style sheet (CSS)  وذلك لتجاوز التنسيقات المعرفة في دروبال عبر اسناد تنسيقات جديدة للخاصيات class , id  بتنسيقات جديدة معرفة ضمن ملفات التنسيق.
على كل الأحول إذا رغبتم بالذهاب إلى أبعد من ذلك , وإجراء تعديلات على خرج HTML  الكلي , فإنه بإمكانك القيام بذلك نظام القوالب في دروبال ( نتعرف عليه لاحقا).
تتألف ملفات القوالب في دروبال من لغتي HTML  و  PHP  . بالإضافة إلى ذلك فإن كل جزء ديناميكي من صفحات دروبال , مثل قائمة او ما شابه , يمكن  تجاوزه ببساطة override  عبر تصريح تابع function  يحمل الاسم المناسب , وبالتالي فإن دروبال سوف يستخدم هذا التابع لينشأ ذلك الجزء من الصفحة.

-العقد     Nodes   
إن انماط المعطيات content type في دروبال كلها مشتقة من نمط اساسي فريد يسمى ب عقدة  node . سواء كان blog entry  او recipe  او حتى project task  فإنهم هيكلية البيانات الاساسية واحدة في الكل.
تكمن العبقرية في هذا النهج في إمكانية التوسيع والتطوير بسهولة. بإمكان مطوري الوحدات module developers  اضافة ميزات اضافية مثل التعليقات , تقييم , مرفقات ,… للعقد بشكل عام , دون الاكتراث إلى نوع العقدة node type  , ومن ثم يستطيع مدير النظام اختاير تفعيل الميزات التي يريد على انماط المعطيات التي يريد . مثلاً : ريما يختار المدير ان يفعل التعليقات للمدونات blog  , وان لا يفعلها للمقالات …
تحوي العقد بشكل عام مجموعة من الخصائص السلوكية behavioral properties  التي يرثها كل انماط المعطيات.فاي عقدة يمكن تحديدها لتظهر في الصفحة الرئيسية من الموقع , نشرها او عدم نشرها , او حتى وضع إمكانية البحث ضمنها.
وبسبب هذه البنية الموجدة للعقد nodes  فإن الواجهة الإدارة توفر لنا واجهات للتعامل مع هذه العقد و تحريرها.

-الحقول     Fields   
تتألف المحتويات في دروبال من حقول. فعنوان العقدة node title  هو عبارة عن حقل , وكذلك الحال بالنسبة لجسم العقدة node body  . بإمكانك استخدام الحقول في دروبال لإنشاء اي نمط محتويات content type ترغب به, على سبيل المثال الحدث Event فإنه عادة يتألف من عنوان title  وشرح description or body , تاريخ البداية start date  ,  توقيت البداية start time , فترة زمنية duration  , موقع location  , ومن المحتمل ان يحوي على رابط للتسجيل في الحدث . إن كل عنصر من العناصر السابقة يمثل حقل field .
لدينا في دروبال الامكانية لإنشاء انماط محتويات content type  باستخدام الحقول , إما بشكل برمجي عبر إنشاء وحدة module  , او عبر الواجهات الإدارية في دروبال وذلك عن طريق انشاء نمط معطيات جديد content type  وإسناده الحقول عبر واجهة المستخدم التي يوفرها لنا دروبال( التجربة العملية توضح بشكل افضل الفكرة ) .
وكذلك تقدم لنا الواجهة الخاصة بالحقول field API التي يوفرها لنا دروبال سهولة كبيرة في إنشاء انماط بسيطة ومعقدة من انمطا المحتويات وذلك مع كم قليل من البرمجة .

-الكتل     Blocks    
الكتلة  Block  وهي عبارة عن معلومات يمكن تفعيلها أو تعطيلها ضمن جزء محدد من قالب الموقع site’s template .على سبيل المثال , يمكن ان تعرض الكتلة Block  عدد المستخدمين الفعالين ضمن الموقع . أو يمكن ان يكون لديك كتلة تحوي روابط لأكثر محتويات الموقع قراءة, او قائمة بالأحداث القادمة.
عادة ما تتوضع البلوكات blocks   ضمن العمود الجانبيsidebar  في قالب الموقع , او ضمن الترويسة header  او تذيل الموقع footer.
يمكن إعداد البلوكات لتعرض عقد node من نمط محدد في مكان محدد .
عادة ما تستخدم البوكات لعرض معلومات تم اعدادها بشكل خاص للمستخدم الحالي. على سبيل المثال , فإن بلوك المستخدم تحوي فقط على روابط للمناطق الادارية ضمن الموقع التي يستطيع المستخدم الحالي النفاذ إليها , مثل “حسابي ” my account  .
المناطق Regions  التي يمكن للبلوكات ان تظهر فيها (مثل الترويسة او التذيل او العمود اليميني او اليساري من الموقع ) يتم تعريفها ضمن ثيم الموقع  site’s theme , ويتم التحكم بموضع وإمكانية رؤية هذه البلوكات ضمن مناطقها regions عبر واجهة ادارية مخصصة لذلك.

-توضع الملفات     File Layout   
ان استيعاب وفهم بنية وتوضع الملفات ضمن التنصيب الاساسي لدروبال يعلمنا عدة أمور وممارسات هامة مثل : معرفة مكان توضع الوحدات والثيمات التي يتم تحميلها.
الشكل 1-4 أدناه يوضح مكان توضع الملفات والمجلدات ضمن التنصيب الأساسي لدروبال

file-layout in drupal

المصدر: كتاب التطوير الاحترافي لدروبال 

كيف يعمل دروبال -الجزء الأول


ما هو دروبال؟
  • يستخدم دروبال لبناء المواقع الالكترونية .
  • دروبال عبارة عن نظام إدارة محتوى مفتوح المصدر , يعتمد في هيكليته على الوحدات بشكل كبير modules  , ويعتمد على العمل التعاوني في بناءه وتطويره.
  • ويتميز دروبال بأنه قابل للتوسع والتطوير , وموافق للمعايير , ويسعى للحفاظ على ترميز – كود – نظيف , بأقل حجم ممكن.
  • دروبال مزود بعدد من الوظائف والفعاليات الاساسية المدمجة في نواة دروبالdurpal core  , ويمكن اضافة وظائف جديدة عبر تفعيل وحدات خارجية .
  • تمت برمجة دروبال ليكون قابل للتكيف , ويمكن تعديل وظائفه عبر القيام ب override على نواة دروبال drupal core   أو عبر اضافة وحدات جديدة ,ولكن لا يتم ابدا التعديل المباشر على النواة core
  • تصميم دروبال يعزل , بشكل ناجح جدا, بين إدارة المحتوى content management  وبين العرض presentation
  • يستخدم دروبال لإنشاء المواقع الشخصية والإدارية , بالإضافة إلى مواقع التجارة الالكترونية e-commerce site  , الجرائد الالكترونية online newspaper  , ادلة الموارد resource directory , مواقع الشبكات الاجتماعية social networking sites , معارض الصور image gallery  … ,باختصار بإمكان دروبال إنشاء اي نوع من انواع المواقع الذي بإمكانك تخيل إنشاءه.
  • هنالك فريق امني متخصص بأمن دروبال drupal security team  , يسعى بشكل جاهد للحفاظ على دروبال آمن وذلك من خلال الاستجابة للتهديدات وإصدار التحديثات الأمنية.
  • جمعية دروبال – جمعية غير ربحية – تقوم بدعم دروبال عبر تطوير البنية التحتية لموقع دروبال drupal.org  , كما انها تنظم الأحدث والمؤتمرات حول دروبال .
   تقنية المكدس stack technology   
من التقنيات التي يستخدمها دروبال “تقنية المكدس ” وهي من التقنيات الشائعة جداً.
في الشكل ادناه 1-1  يتم توضيح تقنية المكدس التي يستخدمها دروبال stack technology
stack technology in drupal
stack technology in drupal
  • طبقة نظام التشغيل : حيث وكما نلاحظ فإن نظام التشغيل يقع في مستوى منخفض في المكدس stack  , وبذلك فإن دروبال لا يهتم كثيرا لنوع نظام التشغيل .
  • يعمل دروبال على اي نظلم تشغيل يدعم PHP
  • طبقة المخدم , وتقع فوق طبقة نظام التشغيل , ويعتبر Apache  أكثر مخدم ويب web server  يستخدم مع دروبل , مع العلم أنه يمكن استخدام مخدمات ويب اخرى مثل Microsoft IIS  .
  • وبسبب العلاقة الطويلة بين دروبال و apache  فإن دروبال ياتي مع ملف .htaccess الذي يقوم بحماية تثبيت دروبال drupal installation .
  • الروابط النظيفة Clean URL وهي عبارة عن الروابط الخالية من اشارات الاستفهام , & وبقية المحارف الغريبة الأخرى, ويتم تحقيق الروابط النظيفة عبر مكون mode_rewrite  الموجود في apache
  • ثم تاتي الطبقة التالية من المكدس عبر طبقة تجريد لقاعدة المعطيات database abstraction layer  والتي تم بشكل كامل إعادة كتابتها بدروبال 7 . المقصود بطبقة التجريد أي بأنها تؤمن واجهة موحدة لتنفيذ الاستعلامات بعض النظر عن نوع قاعدة البيانات المستخدمة.
  • تقوم واجهة قاعدة المعطيات database interface  بتامين واجهة API تعتمد بشكل اساسي على PHP data object PDO وتسمح لدروبال بدعم بأن يدعم اي قاعدة معطيات تدعم PHP.
  • من اكثر قواعد المعطيات الشائعة MySql , PostgreSQL
  • وضمن اصدار دروبال 7 فإن SQLite  اصبح مدعوما ايضا
  • الطبقة الأخيرة ::كتب دروبال بلغة PHP , وكل ترميز نواة دروبال خضعت لمعايير الترميز بشكل صارم.
النواة   Core   
النواة وهي عبارة عن اطار عمل خفيف يشكل لب دروبال , وهو مسئول عن تأمين الفعاليات الأساسية التي تستخدم لدعم بقية الأجزاء من النظام
تتضمن النواة ترميز (كود) يمّكن نظام دروبال من ان يقلع عندما يستقبل طلبا ما , وتحوي النواة core مكتبة تحوي على وظائف شائعة تستخدم بشكل متكرر ضمن دروبال , بالإضافة إلى وحدات modules  تؤمن الوظائف الاساسية مثل :
  • إدارة المستخدمين user management
  • نظام التصنيفاتtaxonomy
  • نظام القوالب templeting
كما هو موضع بالشكل  1-2
drupal-core
drupal-core
كما تتضمن النواة عدد من الكتل ذات الوظائف الاساسية التي تستخدم في أغلب المواقع  , ومن ضمنها
  • Feed aggregation
  • Blogging
  • Polls
  • Forums
المصدر: كتاب التطوير الاحترافي لدروبال

دروس تعليمية عن دروبال


تركيب دروبال - الدرس الأول

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

ماذا نحتاج قبل العمل

لكي نستطيع تركيب دروبال على الجهاز، علينا ان نعلم بأن دروبال بني بلغة php، ولكي نستطيع العمل في هذه اللغة من خلال ويندوز علينا عمل local host يحاكي نظام Unix. وهنالك عدد من البرامج التي تسمح لنا بعمل ذلك ونستخدم هنا XAMPP 

XAMPP

أول شئ نقوم بتحميل البرنامج من موقعه http://www.apachefriends.org/en/xampp.html ونختار XAMPP for windows. أو على الرابط  http://www.apachefriends.org/en/xampp-windows.html
أو رابط لملف exe  http://www.apachefriends.org/download.php?xampp-win32-1.8.1-VC9-installer.exe
بعد تنزيل xampp قم بتشغيل الملف التشغيلي واتبع الخطوات وانتبه الى مكان (المجلد) الذي تقوم فيه بتنزيله مثال (C:\xampp)
عند الانتهاء سيكون هنالك برنامج اسمه XAMPP Control Panel بعد تشغيله تأكد من تشغيل (Appache و MySql) كما في الشكل

الان عند الذهاب الى المتصفح وكتابة (http://localhost) سيظهر لنا شيئا شبيها بالشكل التالي وهذه يعني اننا نجحنا في تثبت XAMPP 

وللتأكد من تشغيل (MySql) وهو المسؤول عن ادارة قواعد البيانات نذهب من المتصفح الى (http://localhost/phpmyadmin

سنكمل تحميل دروبال وعمل قاعدة بيانات جديدة وتركيب دروبال على الlocalhost في الدرس التالي إن شاء الله

المصدر: سامر حجازي - دروبالستاين

الاثنين، 24 ديسمبر 2012

لوحة التحكم Cpanel


ما هو السي بانيل Cpanel

^ تصنف لوحة التحكم (السي بانيل) كواحدة من أرقى وأشمل لوحات التحكم . حيث توفر لمالك الحساب امكانات هائلة في عمليات تنصيب السكريبتات الجاهزة والبرامج الثانوية والتي يمكن لمالك الموقع أن يتصرف بها بحرية ويسر. إضافة لأنشاء صناديق الأيميلات الخاصة بالموقع ورفع الملفات FTP وغيرها من المهام الضرورية في تسيير وتطوير الموقع.
والوحة متعددة اللغات..يمكنك التحكم بلغات واجهة السي بانيل وتثبيت أي من اللغات التالية: العربية, الأنجليزية, الأيطالية, الفرنسية, الألمانية. بالأضافة الى العديد من اللغات الأخرى.


الميزات الكاملة للوحة السي بانيل:

فيما يخص بصناديق الأيميلات:يمكنك التحكم بعدد صناديق الأيميلات المنتمية الى إسم الدومين التابع لك, وذلك بعدد صناديق غير محدودة. كذلك التحكم بالأرسال والأستقبال, بالأضافة الى امكانيات عديدة يمكنك تفعيلها وتوظيفها فيما يخص البريد مثل إلغاء البريد الغير مرغوب, وفلترة الأيميلات الداخلة...
  • رفع الملفات وأمكانيات ال FTP
  • تحديد الأعضاء الذين يحق لهم التعامل برفع الملفات من خلال ال FTP, كذلك رفع الملفات بسهولة ويسر من خلال لوحة واضحة المهام والمعالم.
  • إحصائيات الموقع
  • STATSWebalizer
  • Web StatsWebalizer
  • Ftp StatsAnalog
  • StatsAWStatsView
  • Latest VisitorsView
  • Bandwidth Usage
  • View Error Log
  • Download a raw log file

المصدر: Jormedia