وب سرور (Web server) - ghaemindustrial.com

Download Report

Transcript وب سرور (Web server) - ghaemindustrial.com

‫وب سرور‬
‫(‪)Web server‬‬
‫گردآوري و تنظيم ‪ :‬رضا فهيمي‬
‫سرور(‪)Server‬‬
‫سرور چيست ؟ هر گاه سامانه اي نصب شود و كاربران زيادي بتوانند به آن از طرق‬
‫مختلف وصل شده و اطالعات درخواستي خود را دريافت نمايند آن سامانه را سرور‬
‫گويند‪ .‬طبيعي است هر سرور بايستي آدرس مخصوص به خود را داشته باشد كه اين‬
‫آدرس همان ‪ IP‬است‪.‬‬
‫انواع سرور ‪:‬‬
‫سرورها با كاربري مختلف و داراي اطالعات متفاوت مي باشند در زير تعدادي از سرور‬
‫ها و كاربري آنها ذكر شده است ‪:‬‬
‫‪FTP Server‬‬
‫فايل سرور‬
‫‪Mail Server‬‬
‫ميل سرور‬
‫)‪Direcrory Name Server (DNS‬‬
‫دايركتوري سرور‬
‫‪Web Server‬‬
‫وب سرور‬
‫وب سرور(‪)Web server‬‬
‫وب سرور سامانه اي است که توانايی پاسخگوئی به يك مرورگر وب و ارسال‬
‫صفحه درخواستی مرورگر را داراست‪ .‬صفحات وب بر پايه يک ساختار‬
‫مشخص و با يک نام واحد كه همان آدرس ‪ IP‬است بر روی وب سرور قرار‬
‫میگيرند‪ .‬همچنين بر روی يک وب سرور امکان قرار گرفتن صفحات متعدد‬
‫و با ساختارهای جداگانه نيز وجود دارد‪.‬‬
‫هدف از ايجاد يك وب سرور ارائه صفحات وب به کاربران است‪ .‬اين بدان‬
‫معناست که صفحههای شامل كدهاي ‪ HTML‬همراه با هر نوع مطالب اضافی‬
‫مانند تصاوير‪ ،‬شيوه نامه ها و اسكريپت ها قابل ارائه به كاربران از اين‬
‫طريق امكان پذير است‪.‬‬
‫روش كار بدين صورت است كه کاربر از طريق يک مرورگر وب (مانند‬
‫‪ )Internet Explorer‬ارتباط اوليه را با ارسال درخواست اوليه (شامل‬
‫آدرس محل مورد نظر) براي وب سرور فراهم نموده و وب سرور نيزپس از‬
‫دريافت اطالعات را به دستگاه كاربر ارسال و يا با ارسال پيام خطايی به‬
‫كاربر عدم وجود منبع خاص را به اطالع مي رساند‪.‬‬
‫بعنوان مثال اگر در صفحه مرور گرتان آدرس ‪ http://example.com‬را وارد کنيد‪ ،‬يک‬
‫درخواست به دامنهای که نامش ‪ example.com‬است‪ ،‬فرستاده میشود‪ .‬آنگاه وب سرور‬
‫صفحه ‪ index.htm‬را برای شما ارسال مي كند‪ .‬هر کامپيوتری میتواند با نصب نرمافزار‬
‫وب سرور به يك دستگاه سرور وب (خدمات رسان وب) تبديل شود‪.‬‬
‫در عمل بسياری از وب سرورها داراي ويژگیهای زير مي باشند‪:‬‬
‫‪-1‬شناسايی‪ :‬قبل از اينكه اجازه دسترسي به منبع درخواستي كاربر را بدهند آن را شناسايي مي‬
‫كننند‪.‬‬
‫‪ -2‬نه تنها اجازه دسترسي به منابع استاتيک (مانند محتويات فايلها که بر روی سيستم فايلی‬
‫وجود دارد) بلکه وب سرور ها با استفاده از ساختارهايي مانند ‪SSI , GI , CGI ,FastCGI‬‬
‫‪ ,JSP ,PHP ,ASP , ASP.NET‬دسترسي به منابع ديناميك را نيز فراهم مي سازد‬
‫‪ -3‬وب سرورها امكان استفاده از پروتكل ‪ HTTPS‬را نيز فراهم نموده تا به کاربران اجازه دهند‬
‫ارتباطات مطمئن و امني را داشته باشند‪.‬‬
‫‪ -4‬فشرده سازی مطالب تا بتوان از حجم پاسخها کم کرد‪.‬‬
‫‪ - 5‬پشتيبانی از فايلهای بزرگ تا بتواند فايلهای بزرگتر از ‪ 2‬گيگا بايت را سرويس دهی کند‪.‬‬
‫‪ -6‬وب سرورها پهناي باند را کنترل کرده تا بدين طريق از سرعت پاسخها كاسته و همچنين از‬
‫ترافيك و ازدحام شبكه جلوگيري نمايند در اينصورت وب سرورها قادر به پاسخگوئي به كاربران‬
‫بيشتري خواهند بود‪.‬‬
‫نرم افزار وب سرور‬
‫مرحله اول ‪ :‬براي ايجاد يك وب سرور يك دستگاه كامپيوتر خانگي‬
‫نيز كفايت مي كند وليكن توجه به اين نكته ضروري‬
‫است كه چنانچه هدف از ايجاد يك وب سرور ارائه‬
‫خدمات تجاري و حرفه اي است بايستي از يك دستگاه‬
‫سرور (كامپيوتري كه فقط براي اين منظور ساخته مي‬
‫شود) استفاده نمود‪.‬‬
‫مرحله دوم ‪ :‬استفاده از يك نرم افزار وب سرور كه در اين نوشتار دو‬
‫نرم افزار آپاچي و وب سرور ‪ IIS‬و نحوه نصب آنها‬
‫مورد بحث قرار خواهد گرفت‪.‬‬
‫نرم افزار وب سرور آپاچي‬
‫‪Apache‬‬
‫اين نرم افزار وب سرور در توسعه و همگانی شدن وب جهانی نقش بسيار‬
‫مهمی داشته است‪ .‬اين وب سرور به زبان ‪ C‬نوشته شده است دارای قابليت‬
‫‪( cross-platform‬سازگار با سيستم هاي عامل مختلف) بوده و بر روی‬
‫ماشينهای مختلف قابل اجرا ميباشد‪ .‬يكي از داليل انتخاب اين اسم برای اين‬
‫وب سرور را به خاطر احترام به يکی از قبايل قديمی بومی آمريکا که به خاطر‬
‫مقاومت و مهارت در ساخت ابزار آالت جنگی مشهور ميباشند ذكر نموده اند‬
‫اين وب سرور از سال ‪ 1996‬به عنوان محبوبترين وب سرور برای ‪HTTP‬‬
‫در وب جهانی شناخته شده بود ولی در سال ‪ 2005‬ميدان مبارزه را به ‪IIS‬‬
‫مايکروسافت واگذار كرد و در حال حاضر نزديک به ‪ % 49‬بازار وب‬
‫سرورهاي جهان را به خود اختصاص داده است آپاچی برای ميزبانی هر دو‬
‫نوع وب ايستا و وب پويا مناسب است‪.‬‬
‫نرم افزار وب سرور‬
‫)‪IIS (Internet Information Services‬‬
‫اين وب سرور را شركت مايکروسافت ارائه نموده كه آخرين نسخه آن ‪IIS 7.0‬‬
‫مي باشد‪ .‬در واقع ‪IIS‬مجموعهای از سرويسهای اينترنتی است که بصورت‬
‫يکجا نمايش داده شدهاست‪ .‬طبق آخرين آماری که منتشر شد بعد وب سرور‬
‫آپاچی بيشترين محبوبيت را بين کاربران داشتهاست و هم اکنون نزديک به‬
‫‪ %36‬بازار وب سرورهاي جهان را در اختيار دارد‪ .‬اين وب سرور تنها در‬
‫ساختار مايكروسافت ويندوز قابل ارائه مي باشد و در پلت فرمهای ديگر كار‬
‫نمي كند‪ .‬برای اولين بار مايکروسافت اين وب سرور را در يک پروژه‬
‫آکادميک در دانشگاه اسکاتلند به صورت مجانی عرضه کرد‪.‬‬
‫سپس برای اولين بار از آن در ‪ Windows NT‬استفاده کرد که در آن‬
‫قابليت ‪ Active Server Page‬يا صفحههای فعال کارساز را به آن افزود‪.‬‬
‫بعدها با تکامل نسخههای ويندوز‪IIS ،‬هم تکامل پيدا کرد و در نسخه شماره‬
‫‪ 6.0‬آن مايکروسافت پشتيبانی از ‪IPV 6.0‬را نيز به آن اضافه کرد‪.‬‬
‫نصب وب سرور آپاچي‬
Installing Apache Web server
‫آپاچي قدرتمند است‬
‫• ‪ Apache‬يكي از معروفترين وب سرورهاست دانلود‬
‫آن مجاني است‪ .‬همچنين اين نرم افزار وب سرور‬
‫داراي خاصيت هاي فراواني است كه ازآن يك نرم‬
‫افزار انعطاف پذير ساخته يعني شما مي توانيد از آن‬
‫به عنوان يك نرم افزار وب سرور شخصي استفاده‬
‫كرده و يا از آن در حجم وسيعتري براي برپايي يك‬
‫وب سرور حرفه اي استفاده كنيد‪.‬‬
‫براي نصب يك وب سرور آپاچي مراحل زير را‬
‫انجام دهيد‪:‬‬
‫‪ – 1‬به آدرس زير رفته و نرم افزار را بصورت‬
‫مجاني دانلود كنيد‪.‬‬
‫‪http://www.apache.org/dist/httpd/binaries/win32‬‬
‫الزم به ذكر است در آدرس باال ليستي از فايلهاي قابل دانلود مربوط به وب سرور‬
‫آپاچي وجود دارد (مربوط به محيط هاي مختلف)‬
‫اگر شما وب سرور را براي نصب بر روي ويندوز مي خواهيد بايستي از محل آدرس‬
‫باال فايل ‪ httpd-2.2.15-win32-x86-no_ssl.msi‬را دانلود كنيد‬
‫‪ –2‬پس از دانلود فايل فشرده آن را باز كنيد و بر روي فايل‬
‫اجرايي دابل كليك نماييد صفحه خوش آمد گويي زير ظاهر مي‬
‫شود كليد ‪ next‬را فشار دهيد (شكل زير)‬
‫‪ – 3‬گواهي نرم افزار را به دقت مطالعه و بر روي محل‬
‫پذيرش آن كليك نموده و كليد ‪ next‬را فشار دهيد (شكل زير)‬
‫‪ – 4‬فايل ‪ readme‬را مطالعه نموده و سپس كليد ‪ next‬را‬
‫فشار دهيد (شكل زير)‬
‫‪ – 5‬مشخصات سرور خود را وارد كنيد اين مشخصات عبارتند از‬
‫ مشخصات ‪(domain‬منظور آدرسي است كه قبال آن را تعيين و خريداري‬‫كرده ايد)‬
‫اسم سرور ‪ :‬اسم سرور در اصل مي تواند همان آدرس باال باشد و يا اسم‬
‫ديگري كه از آدر س مشتق شده باشد‪.‬‬
‫در محل خالي سوم بايستي آدرس‪e-mail‬راهبر سرور )‪(administrator‬‬
‫راوارد نمائيد‪.‬‬
‫دو انتخاب در پائين براي شما‬
‫وجود دارد‬
‫سرور را براي همه استفاده‬‫كنندگان تخصيص دهيد‬
‫‪ -‬سرور را براي فقط استفاده‬‫كننده تعريف شده باال اختصاص‬
‫دهيد‬
‫با كليك در جاي خود آن را‬‫مشخص نمائيد‬
‫كليد ‪ next‬را فشار دهيد‬
‫كليد ‪ next‬را‬
‫فشار دهيد‬
‫نرم افزار ‪ web server‬آپاچي شما نصب شد‬
‫مبارك باشد‬
‫وقتی نصب تمام شد برای اطمينان حاصل پيدا کردن از موفقيت نصب‪ ،‬مروگر‬
‫خود را باز کنيد و در داخل نوار آدرس آن ‪ http://localhost‬را وارد کنيد‪،‬‬
‫اگر عبارت !‪ it Works‬در مقابل شما ظاهر شد بدانيد نصب وب سرور‬
‫‪ Apache‬بر روی سيستم شما به درستی صورت پذيرفته است اما ممکن است‬
‫در اين مرحله پيغام خطايی با عنوان‪:‬‬
‫‪"Only one usage of each socket address (protocol/network‬‬
‫‪address/port) is normally permitted. : make_sock: could not bind to‬‬
‫‪address 0.0.0.0:80 no listening sockets available, shutting down. Unable‬‬
‫"‪to open logs.‬‬
‫ظاهرشود‪ .‬اين پيغام خطا يعنی يک برنامه ی سرور مشابه مثل ‪ Skype‬و يا‪...‬‬
‫با ‪ Apache‬دچار تداخل شده است برای اينکه بدانيد چه برنامه ای مزاحم‬
‫کارتان شده ‪ Command Prompt‬را باز می کنيد (برای باز کردن‬
‫‪ Command Prompt‬گزينه ی ‪ Run‬در ‪ start menu‬را انتخاب کنيد و بعد‬
‫دستور ‪ cmd‬را تايپ كنيد) و خط دستور ‪ netstat -a -o‬را وارد کنيد‪PID ،‬‬
‫يا همان ‪ Process ID‬برنامه ای که بر روی سيستم شما در حال استفاده از‬
‫پورت ‪ 80‬يا ‪ HTTP‬است را بيابيد‪.‬‬
‫تنظيم کردن ‪ Apache‬برای به اشتراک گذاری اسناد و فايل ها‬
‫فرض كنيد مي خواهيد فايلهاي موزيك خود را كه در دايركتوري ‪ c:\my music‬قرار دارد جهت دسترسي به‬
‫اشتراك بگذاريم‪ .‬براي اين كار با استفاده از يک ويرايشگر متن مثل ‪notepad‬فايل ‪ httpd.conf‬را که در آدرس‪:‬‬
‫‪C:\Program Files\Apache Software Foundation\Apache2.2\conf‬‬
‫قرار گرفته است را باز کنيد‪ .‬در فايل ‪ httpd.conf‬خطی که با ‪ DocumentRoot‬آغاز می شود را بيابيد در‬
‫ابتدای آن يک عالمت ‪ #‬اضافه کنيد و بعد هم خط ديگري به آن اضافه كرده مانند زير‬
‫"‪#DocumentRoot "C:/Program Files/Apache Group/Apache2/htdocs‬‬
‫"‪DocumentRoot "C:/My Music‬‬
‫سپس در همان فايل عبارت <‪ Directory "C:/Program‬را پيدا نموده در ابتدای اين خط هم باز بايستی يک‬
‫عالمت ‪ #‬وارد کنيد و خط ديگري را نيز زير آن اضافه نماييد مانند زير‪:‬‬
‫>"‪#<Directory "C:/Program Files/Apache Group/Apache2/htdocs‬‬
‫>"‪<Directory "C:/My Music‬‬
‫در اين مرحله عبارت ‪ AllowOverride None‬را پيدا نموده و آن را به شكل ‪ AllowOverride All‬تغيير‬
‫دهيد‪ .‬سپس فايل‬
‫‪ httpd.conf‬را ذخيره کنيد‪ .‬روی آيکون ‪ Apache‬در ‪ Taskbar‬کليک کنيد و گزينه ی ‪ Restart‬را انتخاب‬
‫نمائيد اگر آپاچی ‪ Restart‬شد معنی و مفهومش اين است که تنظيمات را به درستی انجام داده ايد‪،‬‬
‫مرورگر خود را باز كرده و در نوار آدرس آن ‪ http://localhost‬را وارد کنيد‪ ،‬در اين مرحله بايستی بتوانيد‬
‫ليستی از فايل های موسيقی موجود در داخل دايرکتوری ‪ My Music‬در درايو ‪ C‬را در مرورگرتان مشاهده کنيد‬
‫ايجاد کلمه ی عبور برای دسترسی به اسناد موجود بر روی وب سرور‬
‫با توجه به اينكه ايجاد يك وب سرور مستلزم دسترسي كاربران و استفاده از محتويات‬
‫تعيين شده مي باشد لذا براي محدود ساختن دسترسي ها بهتر است از كلمه عبور‬
‫استفاده شود ‪ .‬براي طراحي و ايجاد كلمه عبور در وب سرور آپاچي مراحل زير را انجام‬
‫دهيد‪.‬‬
‫‪ Command Prompt‬را باز كرده و به آدرس زير مي رويم‪:‬‬
‫"‪cd "C:\Program Files\Apache Software Foundation\Apache2.2\bin‬‬
‫و سپس يک فايل پسورد می سازيم‪:‬‬
‫‪htpasswd -c "C:\Documents and Settings\my_password_file.txt" test‬‬
‫می توانيد مسيری که برای ساخت فايل پسورد در باال آورده شده است را تغيير دهيد‬
‫(فراموش نکنيد فايل بايد حتمادر يکی ازدايرکتوريهای موجود در ‪document root‬‬
‫وب سرورتان قرار گيرد) و همينطور می توانيد به جای ‪ test‬هر نام کاربری ديگری که‬
‫می خواهيد جايگزين کنيد‪ ،‬بعد از تايپ خط مذکور از شما پسورد مورد نظرتان تقاضا می‬
‫شود و بايستی آن را دو بار وارد کنيد‪ .‬با گذرندان اين مراحل فايل حاوی رمز عبور که‬
‫رمزنگاری و کد شده هم هست ساخته می شود‪.‬‬
‫حال بايستي افراد قادر باشند با داشتن نام کاربری و کلمه عبور باال بتوانند به وب سرور شما ‪ login‬کنند‬
‫لذا در يک ويرايشگر متن ترجيحا ‪ notepad‬يک فايل جديد باز کنيد و آنچه در زير آورده شده است را در‬
‫آن وارد کنيد‪:‬‬
‫‪AuthType Basic‬‬
‫"‪AuthName "This is a private area, please log in‬‬
‫"‪AuthUserFile "c:\Documents and Settings\my_password_file.txt‬‬
‫‪AuthGroupFile /dev/null‬‬
‫>‪<Limit GET POST PUT‬‬
‫‪require valid-user‬‬
‫>‪</Limit‬‬
‫اطمينان حاصل کنيد در متون باال بخش‬
‫‪ c:\Documents and Settings\my_password_file.txt‬را با مسير فايل پسوردی که در مرحله‬
‫قبل ساختيد آدرس دهی کرده باشيد سپس اين فايل را با نام ‪ .htaccess‬در ‪ DOCUMENT ROOT‬وب‬
‫سرور خود که در اينجا ‪C:\My Music‬است ذخيره کنيد‪( .‬نقطه ی ابتدايی را درنامگذاری فراموش نکنيد)‬
‫نکته‪ :‬اگر از‪notepad‬برای ساخت اين فايل استفاده می کنيد درهنگام ذخيره سازی فايل نام آن رابه‬
‫صورت ”‪ ".htaccess‬وارد کنيد در اين شرايط پسوند ‪ .txt‬از انتهای فايل حذف می شود‪ ،‬در صورت‬
‫وجود پسوند مذکور پسورد و بخش ‪ log in‬شما کار نخواهند کرد‪.‬‬
‫حال با توجه به اقدامات فوق اگردر نوار آدرس مرورگر خود ‪ http://localhost‬را وارد کنيد اين بار‬
‫بايستی از شما نام کاربری و پسورد مطالبه شود و با وارد کردن نام کاربری و پسوردی که پيشتر تعريف‬
‫کرده ايد بايستی بتوانيد به فايل های مورد نظرتان دسترسی پيدا کنيد‪.‬‬
IIS ‫نصب وب سرور‬
Installing
Internet Information Services
‫براي نصب اين وب سرور ما محيط ‪ xp‬را مد نظر قرار مي دهيم‬
‫ابتدا سی دی ويندوز را در سی دی رام قرار می دهيم چرا که اين‬
‫نرم افزار جانبی از روی سی دی ويندوز نصب می شود‪.‬‬
‫سپس وارد آدرس زير می شويم ‪:‬‬
‫‪Control Panel → Add or Remove Programs‬‬
‫سپس ‪ Next‬را می زنيم‬
‫صبر می کنيم تا فايل های مربوطه کپی شوند‪.‬‬
‫در انتها کليد ‪ Finish‬را می زنيم‪.‬‬
‫‪ IIS‬نصب شده است‪.‬‬
‫حال به درايو ويندوز فعال خود می رويم برای اطمينان‬
‫ازنصب ‪ IIS‬پوشه ای به نام ‪ Inetpub‬را جستجو می کنيم‪.‬‬
‫به طور مثال آدرس زير را در نظر بگيريد ‪:‬‬
‫در ‪ Inetpub‬پوشه ای به نام ‪ wwwroot‬وجود دارد که از اين‬
‫پس بايد فايل های مربوط به صفحات خود را در آن كپي كنيم تا‬
‫عمل شبيه سازی سرور انجام شود‪.‬‬
‫برای ديدن صفحه ی تست مربوطه بايد در مرورگر اينترنت خود آدرس زير را بنويسيم ‪:‬‬
‫‪http://localhost‬‬
‫بعد از زدن ‪ Enter‬وارد صفحه ی زير می شويم که يک صفحه آزمايشی است ‪:‬‬
‫حال صفحات طراحي شده خود را در آدرس زير کپی می کنيم ‪:‬‬
‫‪C : \ Inetpub \ wwwroot‬‬
‫برای دسترسی و اجرای صفحات خود بايد در اينترنت اکسپلورر خود به اين‬
‫ترتيب آدرس دهيم ‪:‬‬
‫] ‪localhost /[ Folder name ] / [File name.asp‬‬
IIS ‫ راه اندازی و مديريت‬، ‫تنظيم‬
: ‫ شوید‬IIS ‫از آدرس زیر وارد‬
Control Panel > Administrative Tools > Internet Information Service
‫تنظيمات ‪IIS‬‬
‫در سمت چپ ‪ ،‬روی گزينه ‪ Default Web Site‬کليک‬
‫راست کرده و ‪ Properties‬را می زنيم‪.‬‬
‫دراين قسمت ‪ 8‬سربرگ ( ‪ ) Tab‬داريم که در اينجا مهم ترين آنها را که مورد نياز ما است ‪ ،‬شرح می دهيم‪.‬‬
‫سربرگ ‪ : Home Directory‬در اين قسمت می توانيم يک دايرکتوری مجازی بسازيم و صفحات مان را در‬
‫آنجا قرار دهيم‪ .‬پيش فرض اين دايرکتوری همانی است که درفصل های قبل شرح داده شد‪ .‬همچنين می توانيم‬
‫تعيين کنيم که اين دايرکتوری در محلی ديگر در شبکه است ( مثل کامپيوتر ديگر ) و يا آدرسی در اينترنت‬
‫است‪.‬‬
‫سربرگ ‪ : Documents‬در اين قسمت بايد تعيين کتيم که صفحه اصلی وبسايت مان که بايد در‬
‫ابتدا بار شود به چه اسمی است مثل ‪default . htm :‬‬
‫همچنين می توانيم برای تمام صفحات وبسايت مان پاورقی درست کنيم‪.‬‬
‫* می توانيم چند نام به عنوان پيش فرض اضافه کنيم تا در صورت وجود نداشتن صفحه با آن نام ‪،‬‬
‫به جستجوی صفحه ای با نام بعدی بپردازد‪.‬‬
‫متوقف کردن و راه اندازی مجدد يک وب سايت‬
‫گاهی اوقات الزم است برای انجام عملياتی چون نگهداری ‪ ،‬تهيه پشتيبان و يا‬
‫ويروس يابی سايت را متوقف کرد‪.‬‬
‫چگونگی اين کار را در تصوير زير مالحظه مي كنيد‬