یک وب سرور چیست؟

اصطلاح سرور وب می تواند به سخت افزار یا نرم افزار یا هر دو با هم کار کند.

از نظر سخت افزاری ، وب سرور رایانه ای است که نرم افزار سرور وب و فایل های اجزای وب سایت را ذخیره می کند. (به عنوان مثال ، اسناد HTML ، تصاویر ، شیوه نامه های CSS و فایل های جاوا اسکریپت) یک سرور وب به اینترنت متصل می شود و از تبادل داده های فیزیکی با سایر دستگاه های متصل به وب پشتیبانی می کند.

از نظر نرم افزاری ، یک سرور وب شامل چندین قسمت است که نحوه دسترسی کاربران وب به فایلهای میزبانی شده را کنترل می کند. حداقل ، این یک سرور HTTP است. سرور HTTP نرم افزاری است که آدرس ها (آدرس های وب) و HTTP (پروتکلی که مرورگر شما برای مشاهده صفحات وب از آن استفاده می کند) را درک می کند. از طریق نام دامنه وب سایت هایی که ذخیره می کند می توان به سرور HTTP دسترسی داشت و محتوای این وب سایت های میزبانی شده را به دستگاه کاربر نهایی می رساند.

در ابتدایی ترین سطح ، هر زمان که یک مرورگر به فایلی که در یک سرور وب میزبانی می شود نیاز داشته باشد ، مرورگر فایل را از طریق HTTP درخواست می کند. هنگامی که درخواست به سرور صحیح (سخت افزاری) می رسد ، سرور HTTP (نرم افزاری) درخواست را می پذیرد ، سند درخواستی را پیدا می کند و آن را از طریق HTTP به مرورگر باز می گرداند. (اگر سرور سند درخواستی را پیدا نکند ، در عوض پاسخ 404 را برمی گرداند.) یک وب سرور ایستا یا پشته شامل یک کامپیوتر (سخت افزار) با یک سرور HTTP (نرم افزار) است. ما آن را “ایستا” می نامیم زیرا سرور فایلهای میزبانی شده خود را به صورت موجود به مرورگر شما ارسال می کند.

یک وب سرور پویا متشکل از یک وب سرور ثابت به همراه نرم افزار اضافی ، بیشتر یک سرور برنامه و یک پایگاه داده است. ما آن را “پویا” می نامیم زیرا سرور برنامه قبل از ارسال محتوا به مرورگر شما از طریق سرور HTTP ، فایل های میزبانی شده را به روز می کند.

به عنوان مثال ، برای تولید صفحات وب نهایی که در مرورگر مشاهده می کنید ، سرور برنامه ممکن است یک قالب HTML را با محتوای پایگاه داده پر کند. سایت هایی مانند MDN یا Wikipedia هزاران صفحه وب دارند. به طور معمول ، این نوع سایتها تنها از چند قالب HTML و یک پایگاه داده بزرگ تشکیل شده اند ، نه هزاران سند HTML ثابت. این تنظیم نگهداری و تحویل محتوا را آسان تر می کند.

سرور استوک

شیرجه عمیق تر

برای مرور: برای واکشی یک صفحه وب ، مرورگر شما درخواستی را به سرور وب ارسال می کند ، که فایل درخواستی را در فضای ذخیره سازی خود جستجو می کند. با پیدا کردن فایل ، سرور آن را می خواند ، در صورت نیاز آن را پردازش می کند و به مرورگر ارسال می کند. اجازه دهید این مراحل را با جزئیات بیشتری بررسی کنیم.

میزبانی فایل ها

ابتدا ، یک وب سرور باید فایل های وب سایت ، یعنی تمام اسناد HTML و دارایی های مربوط به آنها ، از جمله تصاویر ، شیوه نامه های CSS ، فایل های جاوا اسکریپت ، فونت ها و ویدئو را ذخیره کند.

از نظر فنی ، شما می توانید همه آن فایل ها را در رایانه خود میزبانی کنید ، اما ذخیره فایل ها همه در یک سرور وب اختصاصی بسیار راحت تر است زیرا:

یک وب سرور اختصاصی معمولاً بیشتر در دسترس است. (در حال اجرا)

بدون احتساب خرابی و مشکلات سیستم ، یک وب سرور اختصاصی همیشه به اینترنت متصل است.

یک وب سرور اختصاصی می تواند آدرس IP یکسانی داشته باشد. این آدرس IP اختصاصی شناخته می شود. (همه ISP ها آدرس IP ثابت برای خطوط خانگی ارائه نمی دهند)

سرور اختصاصی وب معمولاً توسط شخص ثالث نگهداری می شود.

با توجه به همه این دلایل ، یافتن یک ارائه دهنده میزبانی خوب بخش مهمی در ایجاد وب سایت شما است. خدمات مختلف ارائه شده توسط شرکت ها را بررسی کنید. یکی را انتخاب کنید که متناسب با نیاز و بودجه شما باشد. (خدمات از رایگان تا هزاران دلار در ماه متغیر است.) جزئیات بیشتر را می توانید در این مقاله بیابید.

مقاله دیگر :   لپ تاپ کارکرده مناسب ترید

هنگامی که سرویس میزبانی وب را در اختیار دارید ، باید فایل های خود را در سرور وب خود بارگذاری کنید.

سرور HP

ارتباط از طریق HTTP

دوم ، یک سرور وب از HTTP (پروتکل انتقال ابرمتن) پشتیبانی می کند. همانطور که از نامش پیداست ، HTTP نحوه انتقال ابرمتن (اسناد پیوندی وب) بین دو کامپیوتر را مشخص می کند.

 

پروتکل مجموعه ای از قوانین برای ارتباط بین دو کامپیوتر است. HTTP یک پروتکل متنی و بدون حالت است.

متنی

همه دستورات دارای متن ساده و قابل خواندن برای انسان هستند.

بی تابعیت

نه سرور و نه سرویس گیرنده ارتباطات قبلی را به خاطر نمی آورند. به عنوان مثال ، تنها با تکیه بر HTTP ، یک سرور نمی تواند گذرواژه ای را که وارد کرده اید به خاطر بسپارد یا پیشرفت شما را در یک تراکنش ناقص به خاطر بسپارد. برای انجام چنین کارهایی به سرور برنامه نیاز دارید. (ما در مقاله های دیگر به این نوع فناوری می پردازیم.)

HTTP قوانین روشنی برای نحوه ارتباط مشتری و سرور ارائه می دهد. ما بعداً خود HTTP را در یک مقاله فنی پوشش خواهیم داد. فعلا فقط به این موارد توجه کنید:

 

فقط کلاینت ها می توانند درخواست های HTTP و سپس فقط به سرورها ارسال کنند. سرورها فقط می توانند به درخواست HTTP سرویس گیرنده پاسخ دهند.

هنگام درخواست فایل از طریق HTTP ، مشتریان باید آدرس فایل را ارائه دهند.

سرور وب باید به هر درخواست HTTP ، حداقل با پیام خطا پاسخ دهد.

در سرور وب ، سرور HTTP وظیفه پردازش و پاسخگویی به درخواست های ورودی را بر عهده دارد.

به محض دریافت درخواست ، یک سرور HTTP ابتدا بررسی می کند که URL درخواست شده با یک فایل موجود مطابقت دارد یا خیر.

در این صورت ، سرور وب محتوای فایل را به مرورگر ارسال می کند. در غیر این صورت ، یک سرور برنامه فایل لازم را ایجاد می کند.

اگر هیچ کدام از مراحل ممکن نباشد ، وب سرور یک پیغام خطا به مرورگر باز می گرداند ، که معمولاً 404 یافت نمی شود. خطای 404 آنقدر رایج است که برخی از طراحان وب زمان و تلاش زیادی را برای طراحی صفحات خطای 404 اختصاص می دهند.

محتوای استاتیک در مقابل پویا

به طور خلاصه ، یک سرور می تواند محتوای استاتیک یا پویا را ارائه دهد. به یاد داشته باشید که اصطلاح استاتیک به معنی “همانطور که هست” ارائه می شود. وب سایت های استاتیک ساده ترین راه اندازی هستند ، بنابراین پیشنهاد می کنیم اولین سایت خود را یک سایت ثابت کنید.

 

اصطلاح پویا به این معنی است که سرور محتوا را پردازش می کند یا حتی آن را به صورت مستقیم از پایگاه داده تولید می کند. این رویکرد انعطاف پذیری بیشتری را ارائه می دهد ، اما مجموعه فنی پیچیده تر است ، و ایجاد یک وب سایت را به طور چشمگیری دشوارتر می کند.

 

بسیاری از فناوری های سرور برنامه وجود دارد که پیشنهاد یکی از آنها دشوار است. برخی از سرورهای برنامه به دسته بندی های خاصی از وب سایت مانند وبلاگ ، ویکی ، یا تجارت الکترونیکی ارائه می دهند. دیگران بیشتر عمومی هستند اگر در حال ایجاد یک وب سایت پویا هستید ، برای انتخاب فناوری متناسب با نیاز خود وقت بگذارید. مگر اینکه بخواهید برنامه نویسی سرور وب (که به خودی خود یک منطقه هیجان انگیز است را یاد بگیرید) ، نیازی به ایجاد سرور برنامه کاربردی خود ندارید. این فقط چرخ را اختراع می کند