انواع عناصر موجود در سايت
عناصر موجود در سايت به دو نوع تقسيم ميشوند:
1- عناصر توسعه يافته (Developed site elements) كه توسط توسعه دهندگان ايجاد ميشوند، شامل:
a. Web Parts
b. Workflows
c. Site and list definitions
d. Document converters
2- عناصر تاليفي (authored site elements) كه توسط طراحان سايت تهيه ميشوند، شامل:
a. Master pages
b. Cascading style sheets
c. Forms
d. Layout pages
دو نوع عنصر تاليفي داريم:
1- Artifacts
a. Master pages
در Master Page gallery قرار ميگيرند و امكانات كتابخانهاي شيرپوينت براي آنها وجود دارد.
i. site master pages
ii. system master pages
b. Layout pages
صفحات ASPX هستند و طرحبندي صفحات را بر عهده دارند.
در Master Page gallery قرار ميگيرند.
c. Cascading style sheets
در Styles library قرار ميگيرند و براي مشخص كردن فونت و رنگ و ... به كار ميروند.
2- Web content
عبارتاند از متن و تصوير و ...
با يك روش يكسان نميتوان هر دو نوع عناصر را انتقال داد و بنا به نوع آنها روشهاي متفاوتي وجود دارد.
نامگذاري ديگر انواع عناصر تاليفي:
1- عناصر صفحه (Page elements) همچون master pages, cascading style sheets, forms, and layout pages
2- محتوي (Content) همچون تصوير و متن
استقرار عناصر توسعه يافته
عموما عناصر توسعه يافته در محيطهاي برنامه نويسي و توسط كدها توليد ميشوند و مستقيما به Web server و application server انتقال مييابند.
سيستمهاي استقرار عناصر توسعه يافته از محيط توسعه به ساير جاها:
استفاده از Stsadm از طريق خط فرمان | در اين روش كليه عمليات create, import, export و همچنين تهيه solution package قابل انجام است. اين روش به علت پشتيباني از WSS و MOSS در بيشتر محيطها روش خوبي است و در مورد هر دو نوع عناصر موجود در سايت قابل استفاده ميباشد. |
استفاده از Solution Generator | اين روش در مواردي مفيد است كه شما از Visual Studio استفاده ميكنيد. Solution Generator يك برنامه كاربردي مستقل است كه از روي سايت موجود يك Site Definition project توليد ميكند. اين برنامه كاربران را قادر ميسازد تا قبل از توليد كدها در VS با كمك مرورگر يا SharePoint Designer محتواي سايت را تغيير دهند. |
Custom scripts and applications | شما ميتوانيد وظايف زماني را در SharePoint Products and Technologies بسازيد تا كار ساخت و استقرار solution packageها را به صورت خودكار انجام دهند. شما ميتوانيد scriptها و يا برنامههاي كاربردي بنويسيد تا وظيفههاي مشخص شده را در اين فرايند اجرا كنند. |
Manual code handling | در محيطهاي كوچكي كه عناصر توسعه يافته سايت در به صورت مداوم تغيير نميكنند ميتوان به صورت دستي عناصر سايت و منابع مربوط به آنها را مستقر نمود. |
Features | WSS داراي يك امكان قابل حمل و ماژولار است كه Feature نام دارد و تغييرات را در كل سايت ساده ميكند. Feature بستهاي از عناصر WSS است كه ميتواند در محدودهاي خاص فعال شده و در انجام كاري خاص به كاربر كمك نمايد. |
Site templates | در WSS تعريف سايت شامل مجموعهاي از فايلهاي XML است كه ميتوانند در توليد يك سايت جديد به كار آيند. اين فايلها در Web server موجودند. به علاوه شما هم ميتوانيد از يك site template (فايل .stp) در ساخت يك سايت جديد استفاده كنيد. site template از طريق واسط كاربر و يا پيادهسازي مدل پروژه ساخته ميشود و بستهاي است كه شامل مجموعهاي از تفاوتها و تغييرات مشخصات يك سايت پايه ميباشد. بسته site template در يك فايل CAB قرار گرفته و ميتواند به وسيله كاربري كه داراي سطح دسترسي مناسب است در يك site collection، Download و يا Upload شود. |
روشهاي استقرار عناصر توسعه يافته:
Solution packages | Solution packageها عبارتند از بستههايي براي توزيع كه تغييرات WSS و محيط توسعه MOSS را به WEB server و يا application server در server farm شما منتقل ميكند. با استفاده از Solution package ميتوان كارهاي زير را انجام داد: - استقرار عناصر تاليفي در محيط غير متصل - استقرار artifactها و عناصر توسعه يافته در همان بسته با استفاده از اين روش نميتوان عناصر تاليفي را كه artifact نيستند، مستقر نمود. |
Features | Featureها بستههايي حاوي مجموعهاي از فايلهاي XML هستند كه در WEB server مستقر ميشوند. با استفاده از Featureها امكانات زير در اختيار شما است: - استقرار عناصر توسعه يافته در محيطهاي متصل و غير متصل - فعال و غير فعالسازي تنظيمات به صورت سفارشي در Central Administrator يا توسط stsadm - كنترل داشتن بر محدوده استقرار - گنجاندن Featureها در Solution package همراه با ساير Featureها، عناصر توسعه يافته و artifactها از Featureها نميتوان براي استقرار عناصر تاليفي استفاده نمود. |
با استفاده از Solution packages
از سه راه ميتوان يك Solution package ساخت:
1- روش دستي با استفاده از ابزار Makecab.exe
در اين روش ابتدا بايد فايلهاي مربوط به توسعه را در يك پوشه جمع كرد. بهتر است فايلها را بر مبناي نوع آنها در زير پوشههاي مجزا در پوشه اصلي دستهبندي نمود.
مرحله بعدي ساخت فايل manifest.xml ميباشد. اين فايل ليستي از Featureها، تعاريف سايت، فايلهاي منبع، فايلهاي وبپارتها و اسمبليها است و در ريشه فايل سولوشن قرار ميگيرد.
...
2- با استفاده از SharePoint Solution Generator
در اين روش ميتوان سايت آماده شده را در SharePoint solution كامپايل كرد تا در فارم ديگري استقرار يابد.
3- با استفاده از WSPBuilder
بعد از ساخت Solution package بايد آن را به كمك stsadm، import كرده و سپس مستقر نمود.
براي import كردن، بايد در فارم مقصد دستور زير را اجرا نمود:
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin
stsadm -addsolution -filename
اين دستور باعث افزوده شدن سواوشن به بانك سولوشنهاي فارم ميشود.
پس از import كردن، بايد با استفاده از دستور زير، SharePoint solution را مستقر نمود:
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin
براي يك site collection:
stsadm –o deploysolution –name <solution name > –url <URL name>
براي همه site collectionها:
stsadm –o deploysolution –name <solution name> –allcontenturls [-time] <time to deploy> [-allowgacdeployment] [-allowcaspolicies]
با استفاده از Featureها
Featureها از مجموعهاي از فايلهاي XML ساخته ميشوند كه در WEB server استقرار مييابند. ميتوان Featureها را به عنوان قسمتي از site definition يا solution package مستقر نمود. Featureها پيچيدگيهاي ساخت سايتها را كاهش ميدهند و در هنگام ارتقا دادن، قوي عمل ميكنند. همچنين در مواقع زير مفيد هستند:
- وقتي نياز به فعال يا غير فعال كردن وجود داشته باشد
- انعطافپذير بودن تعيين محدوده
- استقرار به طور وسيع
- كنترل زياد روي مجموعهاي از Featureها در آن واحد
مراحل ساخت يك Feature سفارشي:
- ساخت فايلي به نام Feature.xml. اين فايل براي مشخص كردن Featureها و IDهاي منحصر به فرد و نيز اشاره به فايل Module.xml ضروري است.
- ساخت فايلي به نام Module.xml. اين فايل حاوي اطلاعاتي در مورد صفحاتي است كه قسمتي از سولوشن ميباشند.
- تغيير مقدار url فايل به طوري كه به صفحه aspx مورد نظر اشاره كند. و همچنين اجراي دستور لازم در خط فرمان.
- انجام كارهاي زير:
o ساخت يك پوشه در پوشه Feature در سرور كه معمولا در اين مسير است: %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\TEMPLATE\FEATURES
o افزودن صفحه ASPX در اين پوشه
o ساخت فايلهاي Feature.xml و Module.xml در همان مسير
استقرار يك Feature به صورت دستي:
براي اين كار بايد فايلهاي ساخته شده را در پوشهاي قرار داده و در %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\TEMPLATE\FEATURES كپي كرد. براي ساخت پوشه در اين مسير بايد از خط فرمان استفاده كرد.
مرحله بعد نصب و فعالسازي Feature است. ابتدا مسير زير را فعال كنيد:
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin
براي نصب:
stsadm -o installfeature-filename <relative path> -name <feature folder> [-force]
براي فعالسازي:
stsadm -o activatefeature -filename
استقرار عناصر تاليفي
عناصر تاليفي با عناصر توسعهيافته متفاوت هستند. از اين نظر كه اگر چه به منابع موجود در فايل سيستم Web server و يا application server وابسته هستند ولي در بانك اطلاعاتي محتوي قرار ميگيرند. در بعضي موارد عناصر تاليفي براي كار ابتدا به وجود عناصر توسعه يافته محتاج هستند. اين نوع از عناصر عموما توسط واسط كاربري SharePoint Products and Technologies تهيه ميشوند. همچنين سايز ابزار همچون SharePoint Designer 2007 و VS نيز به كار ميآيند.
سيستمهاي استقرار عناصر تاليفي از محيط تاليف به ساير جاها:
Content deployment در SharePoint Central Administration Web site | در محيطي كه فارمهاي مبدا و مقصد با يكديگر شبكه شدهاند ميتوان از امكان استقرار محتوا در Central Administration استفاده نمود و يك content deployment package بر روي فارم مبدا ايجاد كرد و آن را به فارم مقصد export نمود. پيكربندي و استفاده از اين روش آسان است و ميتوان با كمترين زمان نصب و نگهداري از آن براي خودكارسازي استقرار عناصر تاليفي استفاده نمود. |
Content Migration API در Content Migration object model | بسته به محيطي كه از آن استفاده ميكنيد ميتوانيد روي محتوايي كه بايد انتقال يابد و نيز چگونگي آن كنترل داشته باشيد. استفاده از API براي import و export كردن محتوا تنها در روشي پشتيباني ميشود كه آن روش بر GUID تمركز داشته باشد. |
Command line | با استفاده از stsadm در خط فرمان ميتوان Import و export را روي كل سايت، اطلاعات امنيتي و اطلاعاتي كاربري به كار برد. Stsadm زماني مفيدتر است كه هدف انتقال محتويات پايه از كل يك سايت باشد. اين ابزار را ميتوان به تنهايي يا همراه با ديگر روشها به كار برد. از stsadm ميتوان هم براي استقرار artifactها و هم عناصر توسعه يافته استفاده نمود. |
Custom Web service | شما ميتوانيد يك custom Web service براي خودكار كردن فرايند استقرار بسازيد و script يا برناه كاربردي بنويسيد تا وظايف مشخص شده در اين فرايند را اجرا نمايند. |
Manual code handling | در محيطهاي كوچكتر كه به هم متصل نيستند يا محيطهايي كه به طور مداوم تغيير نميكنند، ميتوان به صورت دستي عناصر و منابع مزبوط به آنها را مستقر نمود. در محيطهاي كوچك متصل به هم ميتوان از content deployment feature در Central Administration براي استقرار عناصر تاليفي استفاده نمود. |
Features | WSS داراي يك امكان قابل حمل و ماژولار است كه Feature نام دارد و تغييرات را در كل سايت ساده ميكند. Feature بستهاي از عناصر WSS است كه ميتواند در محدودهاي خاص فعال شده و در انجام كاري خاص به كاربر كمك نمايد. |
Site templates | در WSS تعريف سايت شامل مجموعهاي از فايلهاي XML است كه ميتوانند در توليد يك سايت جديد به كار آيند. اين فايلها در Web server موجودند. به علاوه شما هم ميتوانيد از يك site template (فايل .stp) در ساخت يك سايت جديد استفاده كنيد. site template از طريق واسط كاربر و يا پيادهسازي مدل پروژه ساخته ميشود و بستهاي است كه شامل مجموعهاي از تفاوتها و تغييرات مشخصات يك سايت پايه ميباشد. بسته site template در يك فايل CAB قرار گرفته و ميتواند به وسيله كاربري كه داراي سطح دسترسي مناسب است در يك site collection، Download و يا Upload شود. |
روشهاي استقرار عناصر تاليفي:
Content deployment | با ساختن يك job در Central Administration انجام ميشود و امكانات زير را فراهم ميآورد: - خودكارسازي عمليات استقرار عناصر تاليفي - استقرار عناصر تاليفي بدون نياز به نوشتن اسكريپت و يا كد از اين روش نميتوان براي موارد زير استفاده كرد: - استقرار عناصر توسعه يافته - استقرار عناصر تاليفي در محيط غير متصل در اين روش محتوي از يك site collection به يك site collection ديگر انتقال مييابد. اين محتوي ميتواند مربوط به تمام يا زير سايتي از يك سايت باشد. |
Content deployment packages | Content deployment packages يك فايل CAB است كه شامل همه يا قسمتي از عناصر تاليفي يك وب سايت ميباشد. با كمك Content deployment packages ميتوان عناصر تاليفي را در يك محيط غير متصل مستقر نمود. از اين روش نميتوان براي استقرار عناصر توسعه يافته استفاده نمود. |
Solution packages | Solution packageها عبارتند از بستههايي براي توزيع كه تغييرات WSS و محيط توسعه MOSS را به WEB server و يا application server در server farm شما منتقل ميكند. با استفاده از Solution package ميتوان كارهاي زير را انجام داد:: - استقرار عناصر تاليفي در محيط غير متصل - استقرار artifactها و عناصر توسعه يافته در همان بسته با استفاده از اين روش نميتوان عناصر تاليفي را كه artifact نيستند، مستقر نمود. |
با استفاده از Content deployment
براي استفاده از اين روش بايد مراحل زير را انجام داد:
1- در فارم مقصد يك site collection خالي بسازيد تا محتوا را دريافت نمايد.
2- در فارم مقصد در مسير Central Administration > Operations > Content Deployment Settings تنظيماتي لازم را براي قبول محتوا از جاي ديگر انجام دهيد. همچنين سرور مبدا و مقصد را مشخص نماييد.
3- در فارم مبدا در مسير Central Administration > Operations > Content Deployment Settings سرور مقصد را مشخص نماييد.
4- در فارم مبدا در مسير Central Administration > Operations > Manage Content Deployment Paths and Jobs يك يا چند Path بسازيد.
5- در فارم مبدا در مسير Central Administration > Operations > Manage Content Deployment Paths and Jobs براي هر يك از Pathها يك يا چند Job بسازيد.
6- Job مورد نظر را اجرا نماييد.
با استفاده از Content deployment packages
ساخت:
با استفاده از stsadm ميتوان يك Content deployment packages ساخت:
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin
stsadm –o export –url <URL name> -filename <export file name> –includeusersecurity –versions 4 [-nofilecompression]
Export:
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin
stsadm –o import –url <URL name> -filename <import file name> –includeusersecurity