آموزش نصب وب سرور Apache در Ubuntu،Debian،AlmaLinux و ویندوز



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

 

Apache چیست و چرا هنوز محبوب است؟

آپاچی یک وب سرور ماژولار است، به این معنی که می‌توان قابلیت‌های آن را از طریق ماژول‌های مختلف گسترش داد. این ویژگی آن را به شدت انعطاف‌پذیر می‌کند. آپاچی به دلیل پایداری، امنیت و پشتیبانی گسترده از انواع نرم‌افزارها و زبان‌های برنامه‌نویسی، به ویژه PHP، شهرت دارد.

  • نقاط قوت: متن‌باز و رایگان، انعطاف‌پذیری فوق‌العاده با سیستم ماژولار، سازگاری گسترده، پشتیبانی از فایل‌های .htaccess برای پیکربندی در سطح دایرکتوری، و جامعه کاربری بسیار بزرگ.
  • نقاط ضعف: در مقایسه با وب سرورهای جدیدتر مانند Nginx، ممکن است در مدیریت تعداد بسیار بالای اتصالات همزمان (C10k problem) حافظه بیشتری مصرف کند.

 

پیش‌نیازها

  • یک سرور یا کامپیوتر. برای شروع می‌توانید از یک vps ارزان استفاده کنید.
  • دسترسی به خط فرمان (ترمینال) با مجوزهای مدیریتی (sudo).
  • اتصال به اینترنت برای دریافت بسته‌ها.

 

آموزش نصب آپاچی در لینوکس

نصب آپاچی در اکثر توزیع‌های لینوکس از طریق مدیر بسته رسمی آن‌ها انجام می‌شود که ساده‌ترین و امن‌ترین روش است.

 

نصب آپاچی روی اوبونتو و دبیان (APT)

در سیستم‌عامل‌های مبتنی بر دبیان مانند اوبونتو، بسته آپاچی `apache2` نام دارد.

  1. به‌روزرسانی بسته‌ها: همیشه قبل از نصب هر نرم‌افزاری، مخازن خود را آپدیت کنید.
    sudo apt update && sudo apt upgrade -y
  2. نصب آپاچی: دستور زیر آپاچی را نصب می‌کند.
    sudo apt install apache2 -y
  3. تنظیم فایروال: اگر از فایروال UFW استفاده می‌کنید، باید به آپاچی اجازه عبور دهید. پروفایل ‘Apache Full’ هر دو پورت 80 (HTTP) و 443 (HTTPS) را باز می‌کند.
    sudo ufw allow 'Apache Full'
  4. بررسی وضعیت: پس از نصب، سرویس آپاچی باید به طور خودکار اجرا شود. با دستور زیر وضعیت آن را بررسی کنید.
    sudo systemctl status apache2

    همچنین با وارد کردن آدرس IP سرور خود در مرورگر، باید صفحه خوش‌آمدگویی پیش‌فرض آپاچی اوبونتو را ببینید.

 

نصب آپاچی روی Rocky Linux و AlmaLinux (DNF)

در توزیع‌های مبتنی بر RHEL مانند Rocky و AlmaLinux، نام بسته آپاچی `httpd` است.

  1. به‌روزرسانی سیستم:
    sudo dnf update --refresh -y
  2. نصب آپاچی:
    sudo dnf install httpd -y
  3. فعال‌سازی و اجرای سرویس: در این توزیع‌ها، باید سرویس را به صورت دستی اجرا و فعال کنید تا پس از بوت شدن سیستم نیز اجرا شود.
    sudo systemctl start httpd
    sudo systemctl enable httpd
  4. تنظیم فایروال: فایروال پیش‌فرض در این سیستم‌ها `firewalld` است.
    sudo firewall-cmd --permanent --add-service=http
    sudo firewall-cmd --permanent --add-service=https
    sudo firewall-cmd --reload

    پس از این مراحل، با وارد کردن IP vps آلمان خود در مرورگر، صفحه تست پیش‌فرض آپاچی را خواهید دید.

 

دستورات مدیریتی کلیدی آپاچی

برای مدیریت سرویس آپاچی، از دستورات `systemctl` استفاده کنید (نام سرویس را بر اساس توزیع خود با `apache2` یا `httpd` جایگزین کنید):

  • sudo systemctl stop apache2: متوقف کردن سرویس
  • sudo systemctl start apache2: شروع سرویس
  • sudo systemctl restart apache2: راه‌اندازی مجدد کامل
  • sudo systemctl reload apache2: بارگذاری مجدد تنظیمات بدون قطع سرویس

 

سوالات متداول (FAQ)

چگونه آپاچی را روی ویندوز نصب کنم؟ (نصب apache روی ویندوز)
بله، نصب apache روی ویندوز کاملا امکان‌پذیر و پشتیبانی شده است. برای این کار چند راه وجود دارد:
۱. نصب مستقیم (Native): پروژه آپاچی شخصا فایل باینری (exe) ارائه نمی‌دهد، اما در صفحه دانلود رسمی خود به فروشندگان ثالث معتبری مانند Apache Lounge یا Bitnami لینک می‌دهد. شما می‌توانید آخرین نسخه کامپایل شده برای ویندوز را از این منابع دانلود کرده و به صورت یک سرویس نیتیو روی ویندوز نصب کنید. این روش برای محیط‌های پروداکشن روی ویندوز مناسب است.
۲. پکیج‌های آماده (مانند XAMPP): برای محیط توسعه محلی، ساده‌ترین راه استفاده از نرم‌افزارهایی مانند XAMPP یا WampServer است. این پکیج‌ها یک محیط توسعه کامل شامل آپاچی، PHP، MariaDB و… را با یک کلیک نصب می‌کنند. نصب xampp در ویندوز 11 با این روش بسیار سریع و بی‌دردسر است.
۳. استفاده از WSL: برای توسعه‌دهندگانی که می‌خواهند محیط سرور پروداکشن لینوکسی خود را دقیقا شبیه‌سازی کنند، Windows Subsystem for Linux بهترین گزینه است. با این روش شما یک توزیع کامل لینوکس را درون ویندوز اجرا کرده و آپاچی را به همان شکل لینوکسی نصب می‌کنید.
آیا باید برنامه آپاچی را دانلود کنم؟
برای لینوکس، خیر. هرگز نیازی به دانلود برنامه آپاچی به صورت دستی نیست. همیشه از مدیر بسته توزیع خود (`apt` یا `dnf`) استفاده کنید. این کار تضمین می‌کند که نسخه سازگار و امن را دریافت کرده و مدیریت وابستگی‌ها و آپدیت‌ها به صورت خودکار انجام شود.
برای ویندوز، اگر از XAMPP استفاده نمی‌کنید، باید فایل‌های باینری را از یکی از توزیع‌کنندگان معتبر که در سایت رسمی آپاچی لیست شده‌اند، دانلود نمایید.
تفاوت اصلی آپاچی با Nginx چیست؟
تفاوت اصلی در معماری آن‌هاست. آپاچی از یک معماری مبتنی بر فرآیند استفاده می‌کند که برای هر اتصال یک فرآیند یا ریسمان جدید ایجاد می‌کند. این مدل برای ماژول‌هایی مانند PHP بسیار خوب عمل می‌کند اما در ترافیک بالا می‌تواند حافظه زیادی مصرف کند. Nginx معماری رویداد-محور و غیرهمزمان دارد که آن را در مدیریت هزاران اتصال همزمان (به‌ویژه برای فایل‌های استاتیک) بسیار سریع و کم‌مصرف می‌سازد. یک راهکار محبوب، استفاده از Nginx به عنوان پراکسی معکوس در جلوی آپاچی است تا از بهترین ویژگی‌های هر دو استفاده شود.
مسیر فایل‌های پیکربندی آپاچی کجاست؟

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

  • در اوبونتو/دبیان: دایرکتوری اصلی /etc/apache2/ است. فایل اصلی apache2.conf و تنظیمات سایت‌ها (Virtual Hosts) در /etc/apache2/sites-available/ قرار می‌گیرند.
  • در راکی/آلمالینوکس: دایرکتوری اصلی /etc/httpd/ است. فایل اصلی /etc/httpd/conf/httpd.conf و تنظیمات اضافی در /etc/httpd/conf.d/ قرار دارند.
  • در ویندوز (نصب دستی): مسیر در هنگام نصب توسط شما تعیین می‌شود، اما معمولا چیزی شبیه به C:/Apache24 خواهد بود.
  • دایرکتوری ریشه وب (Web Root) که فایل‌های سایت شما در آن قرار می‌گیرد، معمولا در لینوکس /var/www/html/ و در ویندوز C:/Apache24/htdocs است.

شما با موفقیت وب سرور قدرتمند آپاچی را نصب و راه‌اندازی کردید. این وب سرور یک بستر پایدار و انعطاف‌پذیر برای میزبانی پروژه‌های وب شما، چه بر روی سرور لینوکس و چه ویندوز، فراهم می‌کند. مراحل بعدی می‌تواند شامل امن‌سازی سرور با یک گواهی SSL/TLS و پیکربندی Virtual Hosts برای میزبانی چندین دامنه باشد.