الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ملف الإعدادات web.config

مغلق
بدأه almomaiaz في 16 نوفمبر 2002 · 5 رد · 7,361 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاتة

تجد هذا الدرس بشكل منسق على العنوان

http://www.arabicasp.net/index.asp?TID=16

نبدأ الدرس :

ملف الإعدادت web.config هو أهم ملف في ملفات أي مشروع ASP.NET لأنه يحتوي على جميع إعدادات المشروع مثل تحديد اللغة وجملة الربط بقواعد البيانات والمجلدات التي تريد حمايتها .... الخ وبهذا يمكنك التعديل في خصائص المشروع ككل من خلال التعديل في هذا الملف.

وهذا الملف هو عبارة عن ملف نصي عادي على شكل XML يمكن التعديل عليه بإستخدام أي محرر نصوص مثل notepad .

يمكن أن يحتوي كل مجلد من مجلدات المشروع على ملف web.config ولكن ليس ضروريا لأن ملف web.config يؤثر على المجلدات الفرعية للمجلد الذي يوجد فيه . فمثلا لو كان هناك ملف web.config في c:inetpubwwwroot فإن الإعدادت تطبق على جميع المجلدات الفرعية لهذا المجلد مالم يوجد ملف web.config لمجلد داخلي يحتوي على إعدادت مختلفه.

وفي هذا المقال سوف نتكلم عن أهم الوسوم في ملف web.config لأنه ليس من الضروري كتابة جميع وسوم هذا الملف في كل مشروع وإنما المهم هو كتابة الوسوم التي تحتاجها فقط ولكن قبل أن نتكلم عن الوسوم بالتفصيل الق نظرة على ملف web.config التالي الذي يحتوي الكثير من هذة الوسوم حتى تعرف كيف شكل هذا الملف وكيفية تنسيق الوسوم فيه :

<?xml version="1.0" encoding="windows-1256" ?>

وهنا أهم الوسوم التي قد تحتاجها كثيرا :

Configuration

appSettings

system.web

location

Compilation

CustomErrors

Authentication

Authorization

Globalization

SessionState

Configuration

جميع وسوم ملف web.config تكتب داخل هذا الوسم .

appSettings

هذا الوسم يمثل مكان خاص لتخزين أي قيم خاصة ترغب في إستخدامها في مشروعك وهو يحتوي على خاصيتين هما المفتاح key والقيمة value ويمكن إضافة العديد من القيم بإضافة وسم add لكل قيمة .

فعلى سبيل المثال الكود التالي يقوم بحفظ جملة الربط بقاعدة البيانات Connection String :

ولإستعمال قيمة جملة الربط هذة في أي ملف aspx ماعليك الا كتابة التعريف التالي :

Dim strConn As String = ConfigurationSettings.AppSettings("strConn")

وبهذة الطريقة يسهل عليك مثلا تغيير إسم قاعدة البيانات لأن جميع الصفحات ترتبط بجملة ربط واحدة.

system.web

هذا الوسم أيضا تكتب داخلة كثير من الوسوم الأخرى ولكن ليس جميع الوسوم كما في configuration وكذلك ممكن أن يتكرر خلال ملف web.config واحد حسب عدد المجلدات الفرعية التي تحتاج الى كتابة إعدادت خاصة بها.

location

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

وهذا الكود يستخدم مثلا لحماية المجلد الفرعي admin بحيث لايسمح بدخول أي زائر لأي ملف من ملفات هذا المجلد وسوف يتم شرح الحماية بالتفصيل في درس قادم إن شاء الله :

Compilation

في هذا الوسم يتم إضافة جميع خصائص ترجمة وتنفيذ الصفحات. وهو يحتوي على عدد من الخصائص مثل defaultLanguage لتحديد نوع اللغة المستخدمة في الصفحات وكذلك 3 وسوم داخلية هي (compilers) لتحديد مترجم الصفحات و (assemblies) لإضافة ملفات Assemblies معينة و (namespaces) لإضافة مكتبة namespaces معينة .

CustomErrors

هذا الوسم يمكنك من تحديد ظهور رسالة الخطأ أو تحويلة الى أي صفحة أخرى في حالة حدوث أي خطأ في الصفحة ويحتوي هذا الوسم على خاصيتين هما defaultRedirect لتحديد الصفحة التي يتم تحويله لها و mode وتحتوي على أحدى ثلاث قيم هي On وتعني تشغيل هذة الخاصية وتتبع الصفحة المحددة وOFF وتعني إظهار رسالة الخطأ الحقيقية للجميع و RemoteOnly تعني أن يظهر الخطأ الحقيقي فقط لمن يطلب الصفحة من نفس السيرفر أما الذي يطلبها من جهاز آخر فإنه يتم تحويلة الى الصفحة المحددة في defaultRedirect . وكذلك تحتوي على وسم داخلي هو error لتحويلة الى صفحة معينة في حالة خطأ معين مثل أن يكون رمز الخطأ 404 أي عدم وجود الصفحة :

Authentication

في هذا الوسم يتم تحديد خصائص الحماية وصفحة الدخول للأشخاص المسموح لهم بالدخول لصفحات الموقع وتحتوي على خاصية واحدة هي mode ويمكن أن تأخذ أحد أربع قيم وهي None أي بدون حماية و Forms أي نموذج لإدخال الرقم السري و Windows لإستخدام نفس المستخدمين لنظام التشغيل و Passport وهي خدمة من Microsoft يمكن الإشتراك بها وسيأتي شرح هذة الخصائص بالتفصيل في درس الحماية إن شاء الله :

Authorization

وهذا الوسم يمكننا من تحديد الأشخاص المسموح لهم أو الممنوعين من دخول صفحات الموقع ويحتوي على وسمين داخليين هما allow و deny وكل منهم يحتوي على ثلاث خصائص هي users لتحديد المستخدمين المسموح لهم أو الممنوعين ويتم تحديدهم بذكر أسمائهم أو كتابة * وتعني جميع المستخدمين أو ؟ وتعني الزوار ... وخاصية roles لتحديد نوع المستخدمين المسموح لهم أيضا أو الممنوعين ... وخاصية verb وتحدد المستخدمين حسب نوع طلب الصفحة وتحتوي على أربع قيم هي GET و HEAD و POST و DEBUG .

Globalization

وفي هذا الوسم يتم تحديد الترميز اللغوي ويحتوي على ثلاث خصائص هي fileEncoding وتعني ترميز الصفحات و requestEncoding لترميز الطلب و responseEncoding لترميز الكتابة .

SessionState

في هذا الوسم يتم تحديد خصائص الجلسة Session وأين يتم حفظها وتحتوي على عدد من الخصائص مثل mode ويمكن أن تحوي أي من هذة الأربع قيم وهي Off وتعني عدم حفظها و InProc وتعني حفظة في الجهاز المحلي و StateServer أي حفظه في السيرفر و SqlServer تعني حفظة في قاعدة بيانات SqlServer . وتحتوي خاصية cookieless أي حفظها في كويكز أو لا وكذلك خاصية timeout وتعني مدة حفظها وتأخذ قيمة إفتراضية تساوي 20 دقيقة في حال عدم تحديدها.

وهناك العديد من الوسوم الأخرى ولكن حفاظا على فائدة الدرس ركزت على مارأيته مهما.

#2

و الله تسلم يداك .. يعطيك ألف عافية على جهودك ..

تستاهل ألف (f) و صدقني قليلة بحقك ..;)

You can fly while you can touch the sky

#3

رائع ..............

وهناك أسألة سأطرحها ارضاً امامك :)

#4

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

ياشبكة ياشبكني ... وش فيك باقي شايل الأسئلة على ظهرك ... أطرحها هنا وإن شاء الله نقدر نساعدك ونستفيد منها

#5

الله يسلمك .........

على فكرة ليش بعض الاحيان لازم اضع ملف web.config داخل الفولدرات الداخلية طبعاً اذا لزم الامر ؟؟؟؟

ممكن تدلني على مثل بسيط اقدر انزلة من الانترنت عبارة عن برنامج صغير استطيع تشغيلة وبالتالي استطيع فتح ملف الـ web.config والتعديل علية مثلاً ........؟

شكراً لك

شبكة

#6

الفائدة من وضع web.config في مجلد داخلي هو لوضع إعدادات خاصة بهذا المجلد ويمكن الإستغناء عن وضع ملف web.config في المجلدات الداخلية وذلك بوضع وسم location في ملف web.config في المجلد الرئيسي وتحديد المجلد الذي تريد وضع إعدادت خاصة به وذكر هذة الإعدادات كما شرحنا سابقا في وسم location

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

http://www.codeproject.com/aspnet

هذا الموضوع مغلق.

مواضيع مشابهة