امروز با آموزش وب سرور در خدمت شما هستیم

یکی از رایج‌ترین اصطلاحاتی که در دنیای وب به گوش می‌خورد، وب سرور است.Web server نرم افزاری کامپیوتری است که اصلی‌ترین وظیفه آن ارائه اطلاعات و سرویس‌های درخواست شده در قالب صفحات وب به کاربران است.زمانی که کاربر درخواستی به سمت سایت شما می‌فرستد وب سرور وظیفه پاسخ به درخواست کاربر را به عهده دارد و محتوای درخواست شده را ارسال می‌کند.
به عبارتی دیگر وب سرورها نرم افزارهایی کامپیوتری هستند که درخواست‌های کاربران را از طریق مرورگرها تحت پروتکل HTTP دریافت می‌کنند و پس از پردازش، پاسخ آن‌ها را به آن‌ها بر می‌گردانند. به زبانی ساده می‌توان گفت، این وب سرورها هستند که صفحات وب سایت‌ها را در اختیار کاربران قرار می‌دهند.

وب سرور ها چگونه کار میکنند؟؟

 

برای درک بهتر چگونگی عملکرد وب سرورها، نیازمند شناخت مسیری است که درخواست شما برای دریافت پاسخ طی می‌کند. بنابراین باید ابتدا ساز و کاری را که برای تبادل اطلاعات میان یک مرورگر وب و یک سرور انجام می‌شود درک کنید. برای مثال اگر آدرس سایت هوش پیروزی را (www.vintel.ir) در مرورگر خود وارد کنید، درخواست شما برای دریافت اطلاعات مربوط به صفحه اصلی سایت به دامنه ست ارسال می‌شود. پس از این مرحله، درخواست شما به DNS server ارجاع داده می‌شود تا IP مربوط به سرور سایت را دریافت کند.

زیرا هر سایتی یک IP منحصر به فرد دارد که به وسیله آن می‌توانید به سرور سایت دسترسی پیدا کنید. در این مرحله درخواست شما به سرور می‌رسد و توسط وب سرور مورد پردازش قرار می‌گیرد. در نهایت پاسخ درخواست شما در قالب صفحات HTML همراه با اطلاعاتی دیگر تحت پروتکل HTTP به مرورگر شما ارسال خواهد شد. بنابراین وب سرور را می‌توان به نامه رسانی تشبیه کرد که وظیفه تبادل اطلاعات میان وب سایت و کاربران را بر عهده دارد.

 

!!!!!

HTTP چیه؟

 پروتکل HTTP مخفف عبارت Hyper Text Transfer Protocol هست. که میان سرویس‌دهنده (server) و سرویس‌گیرنده (client) در وب ارتباط میده،میتونیم بگوییم http در واقع یک نوع قانونه  که ارسال و دریافت اطلاعات بین client وserver  بر اساس اون انجام می‌شه

حالا سیستم عامل وب سرورها چیه؟؟

وب سرورها به طور معمول بر روی یکی از دو سیستم عامل، لینوکس یا مایکروسافت ویندوز اجرا می‌شن و محبوب‌ترین سیستم عامل برای اجرای وب‌سرورها، لینوکس است.

بسیاری از وب سرورهای عمومی از زبان‌های برنامه نویسی ASP (صفحات فعال سرور) یا PHP  و سایر زبان‌های اسکریپت نویسی پشتیبانی می‌کنن. هر کدام از این زبان‌ها در حالی که نرم افزار اصلی سرور بدون تغییر باقی می‌مونه، باعث ایجاد رفتار متفاوت وب سرور با فایل‌ها میشن.

ویژگی وب سرور ها

در وب سرورها به منظور رفع نیاز کاربران برخی از ابزارها و موارد مورد نیاز به صورت پیشفرض نصب شده است. وب سرور‌ها از زبان‌های برنامه نویسی مختلفی پشتیبانی می‌کنند. از آنجایی که وب سرورها وظایف مشابهی دارند، دارای ویژگی‌های مشترک زیادی هم نیز با یکدیگر هستند از جمله :

  • مدیریت مفاهیم استاتیک و داینامیک با پشتیبانی از زبان‌های برنامه نویسی مانند PHP، Ruby، ASP و…
  • پشتیبانی از پروتکل HTTPS برای برقراری ارتباطی ایمن
  • کنترل درخواست‌ها و پاسخ‌ها به منظور مدیریت پهنای باند
  • فشرده سازی مطالب
  • و….

در اینجا ببینیم انواع وب سرورها چیا هستن ؟؟

از جمله معروف ترین وب سرورها :

  • Apache (آپاچی)
  • Lite speed (لایت اسپید)
  • Nginx (انجین ایکس)
  • Microsoft IIS

وب سرور آپاچی

وب سرور آپاچی یک نرم افزار رایگان و متن باز است که توسط شرکت Apache Software توسعه یافته است و نام آن از اسم یک قبیله هندی آمریکایی گرفته شده است و از انتشار اولین نسخه آن حدود 25 سال می‌گذرد. از ویژگی‌های خوب آن به جز رایگان و متن باز بودن می‌توان به ساختار ساده، سازگاری با سایت‌های وردپرسیرا نام برد. اما این وب سرور در سایت‌هایی که ترافیک زیادی دارند مشکل دارد و مناسب سایت‌های کوچک و متوسط است. با اینکه موارد امنیتی آن منظم بروزرسانی می‌شود اما باز هم به خاطر ساختاری که دارد گاهاً با مشکل امنیتی روبرو می‌شود.

وب سرور لایت اسپید

 

وب سرور لایت اسپید  در سال 2002 توسط شرکت Lite Speed که در ابتدا یک گروه مهندسی در نیوجرسی آمریکا بودند، طراحی شد. این گروه اعتقاد داشتند که وب سرور آن‌ها نیاز به خرید سرورهای گران قیمت و منابع زیاد را کاهش می‌دهد. آنها با عملکرد و سرعت بالا لایت اسپید، ادعایشان را ثابت کردند و امروزه سایت‌هایی که از این وب سرور استفاده می‌کنند رو به افزایش است.

سرعت حداقل 6 برابری نسبت به آپاچی، پشتیبانی از کنترل پنل‌های سی‌پنل، دایرکت ادمین و… ، استفاده از httpd ،boa و TUX برای محتواهای استاتیک و استفاده از mod_php برای محتواهای پویا که بیش از 50 درصد سریعتر بوده و سایر مواردی که در پایین‌تر به آن‌ها اشاره شده، شرکت گنجه هاست را واداشت که از این وب سرور قدرتمند استفاده کند.

برخی از ویژگی های مهم وب سرور لایت اسپید (Lite Speed) :

  • سازگاری با آپاچی و htaccess.
  • رابط کاربری و نصب آسان
  • مدیریت ساده سرور به کمک GUI
  • بروزرسانی خودکار
  • مجهز بودن به Anti-DdoS که منجر به امنیت بالا می گردد.
  • قابلیت اتصال بیش از هزار اتصال هم زمان
  • بازیابی سرور پس از قطعی های ناگهانی
  • Real-time service monitoring
  • بیشترین بهره بری از perl
  • و …..

وب سرور  Nginx

انجین ایکس یک وب سرور رایگان و متن باز است که در سال 2002 توسط Igor Sysoev پیدایش یافت و در سال 2004 اولین نسخه آن منتشر یافت، این وب سرور با هدف بهره مندی هر چه بیشتر از RAM طراحی گردید. در صورتی که کنترل پنل سی پنل، دایرکت ادمین و پلسک بر روی این وب سرور نصب گردد نیاز است که نقش های به کار رفته در htaccess. برای این وب سرور تعریف شود و همین طور قابلیت ساخت Vhost را  به صورت خودکار ندارد.

از توضیخات بالا متوجه شدیم که وب سرور لایت اسپید عملکرد بهتری نسبت به بقیه وب سرورها مانند آپاچی یا Nginx داشت.

وب سرور IIS

IIS یک وب سرور ویندوزی است که توسط شرکت Microsoft ارائه گردید. در محیط Visual Basic برنامه نویسی گردیده است. IIS مخفف کلمه‎‌ی (Internet Information Server) به معنای سرور اطلاعات اینترنتی است. این وب سرور با اینکه در سیستم عامل ویندوز قابل اجرا است اما با توجه به سرعت کمی که دارد نسبت به سایر وب‌سرورها محبوبیت چندانی ندارد.

شبیه سازی سرور phpروی ویندوز

در این قسمت به شما آموزش خواهم داد که چگونه محیط یک سرور پی اچ پی را روی ویندوز شبیه سازی کنید تا بتونین کدهای php را نوشته و تست کنین.

خب بریم ببینیم چی میشه..

نرم افزارهای زیادی برای راه اندازی وب سرور php روی ویندوز وجود دارن که همگی رایگان هستن در اینجا روش استفاده از نرم افزار Uniform Server را آموزش میدیم

نرم افزار Uniform Server یک نرم افزار رایگان و پرتابل هست و برای استفاده نیازی نیست که ان را نصب کنید.  خب پس فقط کافیه فایل فشرده را دانلود کرده و در جای مناسبی از هارد، اکسترکت کنین..

خب وقتشه ببینیم این نرم افراز چجوریه؟؟؟

نرم افزار Uniform Server، ترکیبی از چندین نرم افزار هست که از جمله:

  • مفسر زبان برنامه نویسی پی اچ پی ( php )
  • وب سرور آپاچی ( apache )
  • پایگاه داده مای اس کیو ال ( MySql )
  • نرم افزار تحت وب PhpMyAdmin

 

ابتدا نرم افزار Uniform Server را برای ویندوز دانلود کرده و در یکی از درایوهای کامپیوترتان اکستراکت کنید. پیشنهاد می کنم آن را در درایوی غیر از درایو نصب ویندوز، قرار دهید.

 

سپس فایل UniController.exe موجود در پوشه ی نرم افزار را اجرا کنید.

پنجره ی زیر را مشاهده خواهید کرد:

. روی دکمه Start Apache و Start MySQL کلیک کنید تا به مربع قرمز رنگ جلوی آن ها به رنگ سبز درآید

حالا گوگل کروم را باز کرده و در آدرس بار تایپ کنید: http://localhost .

اگر صفحه زیر را مشاهده کردید یعنی همه چیز برای شروع کد نویسی به زبان پی اچ پی برای شما آماده است.

در غیر اینصورت در پایین این مقاله، مشکلات احتمالی که ممکن است برای شما رخ دهد و روش برطرف کردن آن توضیح داده شده است.

به وسیله ی اکسپلورر ویندوز، به پوشه ای که Uniform Server را در آن اکسترکت کرده اید بروید. در پوشه ی نرم افزار، پوشه ای به نام www قرار دارد. هر فایلی که در اینجا قرار گیرد از طریق تایپ آدرس آن پس از http://localhost قابل دستیابی است

پس از اجرای نرم افزار Uniform Server ممکن است مشکلات زیر برای شما رخ دهد:

1-اگر یک وب سرور دیگر مانند wampp یا xamp یا iis روی کامپیوتر شما نصب باشد

و از پورت 80 استفاده کند، هنگام اجرای آپاچی با خطای پورت برخورد خواهید کرد

برای برطرف کردن مشکل کافیست در نرم افزار Uniform Srever به منوی زیر بروید:

Uniform Server > Apache > Change Apache ports > Change Apache port

 

در کادری که نمایش داده می شود عددی غیر از 80 تایپ کنید مثلا : 8080 یا 8081 و از این قبیل در اینصورت هنگامی که آدرس http://localhost را تایپ کنید.

وب سرور قبلی که نصب کرده اید اجرا می شود و برای اینکه از وب سرور آپاچی استفاده کنید باید آدرس را به این صورت تایپ کنید: http://localhost:8080 یا http://localhost:8081

در حقیقت باید بعد از نام localhost پورت مورد نظر را وارد نمایید.

 

2-اگر هنگام اجرای MySQL به خطای پورت برخوردید، ممکن است علت این باشد که نسخه ی دیگری از MySQL روی سیستم شما نصب است و از پورت پیشفرض 3306 استفاده می کند

و یا اینکه یک نرم افزار دیگر، روی کامپیوتر شما پورت 3306 را اشغال کرده است برای رفع مشکل در نرم افزار Uniform Server به منوی زیر بروید:

Uniform Server > MySQL > Change MySQL port

در کادری که باز می شود عددی غیر از 3306 تایپ کنید مثلا 3307 یا 3308 و از این قبیل.

 

3-اگر هنگام اجرای MySQL به خطای پسوورد برخورد کردید سعی کنید از طریق منوی زیر در نرم افزار Uniform Server، پسوورد MySQL را تغییر دهید

Uniform Server > MySQL > Change MySQL password

 

کلام آخر…

به دلیل خدمات گسترده ای که تحت وب ارائه می‌شوند، وب سرورهای زیادی تا کنون توسعه داده شده است. هر یک از این وب سرورها مزایا و معایبی مختلفی دارند. بنابراین برای انتخاب یک وب‌ سرور متناسب با اهداف موردنظر عوامل مختلفی مانند پشتیبانی از زبان‌‌های برنامه‌نویسی، امنیت و همچنین میزان بهینه بودن آن  را در نظر داشته باشید.

 

 

بدون دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *