وب سرور چیست؟

آشنایی با وب سرور

وب سرور یک نرم افزار سرور یا یک سیستم از یک یا چند رایانه اختصاصی برای اجرای این نرم افزار است که می تواند درخواست های HTTP کاربر را در شبکه جهانی وب یا همچنین در شبکه های خصوصی و محلی شبکه برآورده کند.

وب سرور در ابتدا بر بستر یونیکس ساخته شد و برای انتشار محتوای استاتیک وب، متشکل از فایل های متنی ASCII و با استفاده از زبان HTML طراحی شد. کمی پس از آن محتوای دینامیک مانند فرم ها و موتورهای جستجو با استفاده از رابط مشترک یا CGI در اسکریپت های نوشته شده به زبان های تفسیری مانند Perl اضافه شد.

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

وقتی کاربری برای وب سایت درخواستی میفرستد، مرورگر درخواست را برای مشاهده صفحه وب مربوطه به اینترنت ارسال می کند تا صفحه مربوط به آن آدرس را نشان دهد. یک سرور نام دامنه (DNS) این URL را به آدرس IP تبدیل می کند (به عنوان مثال 192.168.216.345) ، که به نوبه خود به یک وب سرور اشاره می کند.

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

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

 

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

 

آشنایی با وب سرور

در ابتدایی ترین سطح یک وب سرور، هر زمان که یک مرورگر به فایلی که در یک وب سرور میزبانی شده است نیاز داشته باشد، مرورگر از طریق HTTP، فایل را درخواست می کند. وقتی درخواست به وب سرور رسید،  درخواست را می پذیرد، document درخواستی را پیدا می کند و آن را نیز از طریق HTTP به مرورگر می فرستد. اگر وب سرور document درخواستی را پیدا نکرد، به جای آن پاسخ 404 برمی گرداند.

 

برای انتشار یک وب سایت، به یک وب سرور استاتیک یا دینامیک نیاز دارید.

یک وب سرور استاتیک، شامل یک کامپیوتر به عنوان سخت افزار و یک HTTP server به عنوان نرم افزار است. ما این نوع وب سرور را “استاتیک” می نامیم زیرا سرور فایل های میزبان خود را همانطور که هست به مرورگر شما می فرستد.

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

 

به عنوان مثال، برای تولید صفحات وب نهایی که در مرورگر مشاهده می کنید، سرور برنامه ممکن است یک الگوی HTML را با محتوای دیتابیس پر کند.

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

 

مزایای وب سرور

1. وب سرور خطای HTTP مانند 400، 404، 408، 502، 503 یا حتی 504 را برمی گرداند.

2. وب سرور قبل از بازگرداندن هرگونه محتوا، اتصالات TCP را رد یا ریست می کند.

3. وب سرور به شما کمک می کند تا سرعت دانلود یا به عبارت دیگر عملکرد برنامه وب خود را بررسی کنید. 

4. به شما کمک می کند تا ساختار بد URI، و لینک های خراب را از مورد دیگر تشخیص دهید.

5. به شما کمک می کند معامله رخ داده بین وب سایت و سرور هنگام میزبانی را به روشنی درک کنید.

6. شما را با نحوه ارتباط HTTP بیشتر آشنا می کند.

7. با استفاده از وب سرور تنظیمات سرور سفارشی مطابق با نیازهای شما صورت می گیرد.

 

معایب وب سرور

1. مسئولیت مدیریت: صاحب سرور مسئولیت تام مدیریت سیستم را دارا است.

2. مصرف برق بالا: میزان مصرف برق برای هر کاربر به طور متوسط بیشتر از مدلی است که تعداد زیادی کاربر از یک سرور مشترک استفاده می کنند، مانند مدل SaaS / cloud.

کاربرد های وب سرور

کاربرد های وب سرور

_ وب سرورها در درجه اول برای پردازش و تحویل صفحات یک وب سایت به کاربران استفاده می شوند. این بدان معناست که وب سرورها باعث می شوند وب سایت ها هنگام تایپ کردن یک URL ظاهر شوند.

 

_ شما با استفاده از یک وب سرور می توانید یک یا چند وب سایت را مدیریت کنید. همچنین می توانید با استفاده از تنظیمات وب سرور یک سرور FTP ایجاد کنید.


_ وب سرور تنظیمات ورود به سیستم را انجام می دهد، از جمله جایی که فایل های ورود به سیستم ذخیره می شوند، چه داده هایی در فایل های ورود به سیستم وجود دارد و غیره.

 

_ وب سرور امنیت وب سایت یا دایرکتوری های آن را تامین می کند. به عنوان مثال، بر اساس الزامات و کانفیگ های تعیین شده، وب سرور اجازه مشاهده یا جلوگیری از مشاهده یک وب سایت خاص را می دهد، همچنین IP address های مجاز یا غیر مجاز به مشاهده وب سایت را نیز مشخص می کند.

 

_ وب سرور صفحات خطای سفارشی را کانفیگ و معرفی می کند. با این کار دارندگان وب سایت می توانند پیام های خطای کاربر پسند را در وب سایت ایجاد کرده و نمایش دهند.

 

_ وب سرور document های پیش فرض را مشخص می کند، که در صورت عدم ذکر نام فایل، نمایش داده می شوند. به عنوان مثال، مشخص می کند که اگر کاربر، http: // localhost را باز کند، کدام فایل ها باید نمایش داده شوند. 

 

انواع وب سرور

انواع وب سرور

Apache HTTP Server وب سرور Apache HTTP Server 

این وب سرور یکی از محبوب ترین وب سرورها در جهان است که توسط بنیاد نرم افزار Apache توسعه یافته است. این وب سرور یک نرم افزار open source است و تقریباً روی همه سیستم عامل ها از جملهLinux ، Unix ،Windows ،FreeBSD ،Mac OS X و غیره قابل نصب است.

open source بودن به این معنا است که کاربر قادر است سرور را بر اساس نیاز خود تغییر دهد. آخرین نسخه Apache بسیار انعطاف پذیرتر از نسخه قبلی است و می تواند درخواست های بیشتری را به راحتی پاسخ دهد. Apache تحت Apache License 2.0 منتشر شده است که توسط جامعه آزاد توسعه دهندگان تحت بنیاد نرم افزار Apache توسعه و نگهداری می شود. 

Apache از ویژگی های مختلفی پشتیبانی می کند که بسیاری از آن ها به عنوان ماژول های کامپایل شده، عملکرد اصلی را گسترش می دهند. این موارد می توانند از طرح های احراز هویت تا پشتیبانی از زبان های برنامه نویسی سمت سرور مانند Perl ،Python ،Tcl و PHP باشند.

روشهای فشرده سازی رایج در Apache شامل ماژول خارجی، mod_gzip است که برای کمک به کاهش اندازه صفحات وب ارائه شده از طریق HTTP پیاده سازی شده است.

ModSecurity یک موتور تشخیص و جلوگیری از نفوذ open source برای برنامه های وب است. گزارش های Apache را می توان از طریق یک مرورگر وب با استفاده از اسکریپت های رایگان، مانند AWStats / W3Perl یا Visitors، تجزیه و تحلیل کرد.

 

 وب سرور NGINX وب سرور NGINX

وب سرور NGINX به دلیل عملکرد بالایی که در منابع کم و کانفیگ ساده ارائه می دهد، کاملاً مشهور است. این برنامه عمدتا برای ذخیره سازی، media streaming ,load balancing، مدیریت فایل های استاتیک، auto-indexing و غیره استفاده می شود، NGINX برای هر درخواست توسط کاربر به جای ایجاد فرایندهای جدید، درخواست ها را در یک عمل واحد با استفاده از یک رویکرد اداره می کند .

NGINX یک وب سرور رایگان و open source است. NGINX قادر به مدیریت تعداد زیادی اتصال همزمان با حافظه بسیار کم در حدود 2.5 مگابایت است. این ها به دلیل ماهیت رویداد محور این وب سرور است.

NGINX با استفاده از ماژول های سمت سرور از تعداد زیادی زبان وب سرور پشتیبانی می کند. به عنوان مثال، برای پردازش اسکریپت های PHP نیاز به نصب جداگانه PHP-FPM است. برخی از سایت ها به صورت دینامیک درخواست ها را در قسمت آخر مدیریت می کنند و آنها را برای سرویس دهی NGINX در صورت درخواست محتوا توسط کاربر ، ذخیره می کنیم.

NGINX می تواند برای ارائه محتوای دینامیک در شبکه با استفاده از FastCGI ، کنترل کننده های SCGI برای اسکریپت ها، سرورهای برنامه WSGI یا ماژول های Phusion Passenger استفاده کند و می تواند به عنوان یک load balancer برای نرم افزار باشد.

دو نسخه از NGINX وجود دارد، OSS Nginx و Nginx Plus. مورد دوم ویژگی های اضافی دیگری را شامل می شود که در OSS NGINX وجود ندارد، مانند، تداوم جلسه بر اساس کوکی ها، یکپارچه سازی سرویس DNS ،API پاک کردن حافظه کش، به روز رسانی با توقف صفر برای کانفیگ های بالادست و همچنین ذخیره سازی با استفاده از NGINX Plus API و ماژول دینامبیک فایروال برنامه وب (WAF).

 

وب سرور Litespeed وب سرور Litespeed

همانطور که از نام آن پیداست LiteSpeed ​​Web Server یک وب سرور سبک است که توسط LiteSpeed ​​Industries Inc توسعه یافته است و با ویژگی های معمول Apache از جمله mod_rewrite ،htaccess و mod_security سازگار است.

این روز ها LiteSpeed ​​بسیار محبوب شده است و با وجود داشتن حافظه کمتر نسبت به سایر وب سرور ها، قادر به مدیریت هزاران اتصال همزمان است. هدف از معرفی این وب سرور مطالعه فایل های کانفیگ Apache می باشد. با این حال، طبق گفته این شرکت، یک وب سرور LiteSpeed ​​قادر به مدیریت داده های معادل دو سرور Apache است.

LSWS 5.0 اولین وب سرور محبوبی بود که از HTTP / 2 پشتیبانی کرد. این وب سرور دارای یک افزودنی با نسخه 5.0 LiteMage Cache است، که یک راه حل ذخیره صفحه برای افزایش سرعت فروشگاه های مگنتو است.

این نسخه به صورت نسخه رایگان و همچنین گزینه پولی در دسترس است. LiteSpeed ​​Web Server یک وب سرور با کارایی بالا و بسیار مقیاس پذیر است. LSWS می تواند فایل های کانفیگ Apache را مستقیماً بارگیری کند و به عنوان یک جایگزین برای Apache عمل می کند. برای استفاده از این وب سرور باید لایسنس آن تهیه شود. ما در وب پویان لایسنس LitSpeed را با هزینه بسیار پایین به شما ارایه میدهیم.

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

 

 

 

وب سرور چیست؟