نصب Nginx روی AlmaLinux

https://negarnovin.com/docs/how-to-install-nginx-on-almalinux/ · آخرین به‌روزرسانی: · نویسنده: نگارنوین · سایت: نگارنوین · 9 دقیقه مطالعه

📌 خلاصه (TL;DR)

How to Install Nginx on AlmaLinux نصب Nginx روی AlmaLinux چگونه Nginx را روی AlmaLinux 9 نصب کنید، بلوک‌های سرور را پیکربندی کنید

📊 حقایق کلیدی

URLhttps://negarnovin.com/docs/how-to-install-nginx-on-almalinux/
تاریخ انتشار2025-09-11
آخرین به‌روزرسانی2025-09-11
نویسندهنگارنوین
ناشرنگارنوین
زبانفارسی (fa-IR)
تعداد کلمات1605
نوع صفحهبرگه

📄 محتوای کامل

نحوه نصب وب سرور Nginx روی AlmaLinux ۹ یاد بگیرید که چگونه Nginx را روی AlmaLinux ۹ نصب کنید، بلوک‌های سرور را پیکربندی کنید، سرویس‌ها را مدیریت کنید و HTTPS را با Let’s Encrypt فعال کنید.

Nginx یک وب سرور متن‌باز با کارایی بالا است که به عنوان یک پروکسی معکوس، متعادل‌کننده بار و حافظه پنهان HTTP عمل می‌کند. برای استقرار آن بر روی یک پلتفرم پایدار در سطح سازمانی، می‌توانید وب سرور Nginx را روی AlmaLinux ۹ نصب کنید. این وب سرور به راحتی محتوای استاتیک و پویا را مدیریت می‌کند و با فناوری‌هایی مانند PHP و سرورهای پایگاه داده به خوبی کار می‌کند.

در این مقاله، نحوه نصب و پیکربندی Nginx روی AlmaLinux ۹ را خواهید آموخت. مراحل شامل نصب Nginx، مدیریت سرویس سیستم، تنظیم یک بلوک سرور سفارشی (میزبان مجازی) و فعال کردن HTTPS با Let’s Encrypt است.

پیش‌نیازها

قبل از شروع، شما نیاز دارید:

  • یک سرور مجازی با سبیستم عامل آلمالینوکس

نصب Nginx روی AlmaLinux ۹

شما می‌توانید Nginx را روی AlmaLinux از منابع پیش‌فرض بسته DNF نصب کنید. این بسته با استفاده از nginxنام بسته در دسترس است. برای به‌روزرسانی مدیر بسته DNF و نصب Nginx، مراحل زیر را دنبال کنید.

  1. بسته‌های سیستمی را به‌روزرسانی کنید. کنسولکپی
    $ sudo dnf update

    توضیح کدطراحی شده توسط نگارنوین

  2. وب سرور Nginx را نصب کنید. کنسولکپی
    $ sudo dnf install nginx -y

    توضیح کدطراحی شده توسط نگارنوین

  3. بررسی کنید که Nginx به درستی نصب شده باشد. کنسولکپی
    $ sudo nginx -v

    توضیح کدطراحی شده توسط نگارنوین

    خروجی:

    nginx version: nginx/1.20.1
  4. سرویس Nginx را شروع کنید. کنسولکپی
    $ sudo systemctl start nginx

    توضیح کدطراحی شده توسط نگارنوین

  5. فعال کردن ترافیک HTTP در فایروال کنسولکپی
    $ sudo firewall-cmd --permanent --add-service=http

    توضیح کدطراحی شده توسط نگارنوین

    • اگر Firewalld نصب نشده است، دستور زیر را برای نصب آن اجرا کنید و به اتصالات SSH اجازه دهید. کنسولکپی
      $ sudo dnf install firewalld -y && sudo firewall-cmd --permanent --add-service=ssh

      توضیح کدطراحی شده توسط نگار نوین

    • اگر Firewalld در حال اجرا نیست، آن را اجرا کنید. کنسولکپی
      $ sudo systemctl start firewalld

      توضیح کدطراحی شده توسط نگارنوین

  6. اعمال تغییرات در فایروال کنسولکپی
    $ sudo firewall-cmd --reload

    توضیح کدطراحی شده توسط نگارنوین

  7. تأیید کنید که Nginx در مرورگر کار می‌کند.
    http://server-ip-address

مدیریت سرویس سیستم Nginx

Nginx به طور پیش‌فرض یک سرویس systemd نصب می‌کند. برای مدیریت سرویس و اطمینان از اجرای مداوم آن روی سرور خود، مراحل زیر را دنبال کنید.

  1. فعال کردن Nginx برای شروع در هنگام بوت شدن سیستم. کنسولکپی
    $ sudo systemctl enable nginx

    توضیح کدطراحی شده توسط نگارنوین

  2. اگر Nginx در حال اجرا نیست، آن را اجرا کنید. کنسولکپی
    $ sudo systemctl start nginx

    توضیح کدطراحی شده توسط نگارنوین

  3. سرویس سیستم Nginx را بررسی کنید و از فعال بودن آن اطمینان حاصل کنید. کنسولکپی
    $ sudo systemctl status nginx

    توضیح کدطراحی شده توسط نگارنوین

    خروجی:

    ● nginx.service - The nginx HTTP and reverse proxy server
         Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; preset: disabled)
         Active: active (running) since Sun 2025-03-30 23:12:44 UTC; 1min 33s ago
       Main PID: 52297 (nginx)
          Tasks: 2 (limit: 5716)
         Memory: 2.0M
            CPU: 36ms
         CGroup: /system.slice/nginx.service
                 ├─52297 "nginx: master process /usr/sbin/nginx"
                 └─52298 "nginx: worker process"    
  4. برای اعمال تغییرات پیکربندی جدید، Nginx را مجدداً بارگذاری کنید. کنسولکپی
    $ sudo systemctl reload nginx

    توضیح کدطراحی شده توسط نگارنوین

    سرویس Nginx را مجدداً راه اندازی کنید.

  5. کنسولکپی
    $ sudo systemctl restart nginx

    توضیح کدطراحی شده توسط نگارنوین

ایجاد پیکربندی‌های میزبان مجازی Nginx (بلوک‌های سرور)

پیکربندی‌های میزبان مجازی Nginx شامل نام سرور، مدیر و اطلاعات برنامه وب backend است. دایرکتوری‌های default.dand conf.dبه طور پیش‌فرض حاوی پیکربندی‌های میزبان مجازی برای Nginx در AlmaLinux هستند، مگر اینکه تغییر کنند. برای ایجاد یک بلوک سرور سفارشی با محتوای HTML خودتان، این مراحل را دنبال کنید.

  1. سرویس سیستم Nginx را بررسی کنید و از فعال بودن آن اطمینان حاصل کنید. کنسولکپی
    $ sudo systemctl status nginx

    توضیح کدطراحی شده توسط نگار نوین

  2. ریشه سند را تنظیم کنید و محتوای نمونه ایجاد کنید. کنسولکپی
    $ sudo mkdir /usr/share/nginx/example && sudo nano /usr/share/nginx/example/index.html

    توضیح کدطراحی شده توسط negarnovin Agent

  3. کد برنامه HTML زیر را در index.htmlفایل وارد کنید. HTMLکپی
    <html>
    <body>
    <h1>Sample HTML Application</h1>
    <p>Powered by the Nginx Web Server </p>
    </body>
    </html>

    فایل را ذخیره کنید و از ویرایشگر متن خارج شوید.

    برنامه HTML زمانی نمایش داده می‌شود که وب سرور Nginx تمام فایل‌های پشتیبانی شده را برای نمایش در مرورگر وب بارگذاری کند.

  4. یک فایل بلوک سرور جدید ایجاد کنید. کنسولکپی
    $ cd /etc/nginx/conf.d/ &&  sudo nano example-host.conf

    توضیح کدطراحی شده توسط نگارنوین

  5. تنظیمات Nginx زیر را در example-host.confفایل وارد کنید. example.comنام دامنه خود را جایگزین کنید. INIکپی
    server {
        listen       80;
        listen       [::]:80;
        server_name  example.com;
    
        root         /usr/share/nginx/example;
        index        index.html index.htm;
    
        access_log   /var/log/nginx/example.com_access.log;
        error_log    /var/log/nginx/example.com_error.log;
    
        location / {
            try_files $uri $uri/ =404;
        }
    }

    فایل را ذخیره کنید و از ویرایشگر متن خارج شوید.

    پیکربندی میزبان مجازی Nginx فایل‌های برنامه وب را از /usr/share/nginx/exampleدایرکتوری با استفاده از example.comدامنه ارائه می‌دهد.

  6. سینتکس پیکربندی Nginx را برای یافتن خطاها آزمایش کنید. کنسولکپی
    $ sudo nginx -t

    توضیح کدطراحی شده توسط NegarNovin

    خروجی:

    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
  7. برای اعمال تغییرات پیکربندی، Nginx را مجدداً بارگذاری کنید. کنسولکپی
    $ sudo systemctl reload nginx
  8. دسترسی به دامنه خود را آزمایش کنید و تأیید کنید که برنامه وب بارگیری می‌شود.
    http://your-domain.com/

توجه داشته باشید

بلوک سرور پیش‌فرض در /etc/nginx.confفایل ذخیره شده است. برای غیرفعال کردن آن، بلوک سرور را حذف کنید.

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

Nginx برنامه‌های وب را به طور پیش‌فرض با استفاده از HTTP ارائه می‌دهد، مگر اینکه در تنظیمات میزبان مجازی شما مشخص شده باشد. HTTPS رمزگذاری بین Nginx و مرورگر وب کلاینت را فراهم می‌کند و اتصالات ایمن به سرور وب را تضمین می‌کند. این بخش شما را در نصب Certbot، پیکربندی HTTPS و تنظیم تنظیمات SELinux و فایروال راهنمایی می‌کند.

  1. مخزن EPEL را که شامل ابزار Certbot است، نصب کنید. کنسولکپی
    $ sudo dnf install epel-release -y

    توضیح کدطراحی شده توسط negarnovin

  2. بسته‌های سیستمی خود را به‌روزرسانی کنید. کنسولکپی
    $ sudo dnf update

    توضیح کدطراحی شده توسط نگار نوین

  3. نصب Certbot با پشتیبانی افزونه Nginx. کنسولکپی
    $ sudo dnf install python3-certbot-nginx -y

    توضیح کدطراحی شده توسط نگارنوین

  4. با استفاده از Certbot درخواست گواهی SSL دهید. example.comو را [email protected]با دامنه و آدرس ایمیل واقعی خود جایگزین کنید. کنسولکپی
    $ sudo certbot --nginx --domain example.com --email [email protected] --agree-tos
    توجه داشته باشید

    با نام دامنه واقعی خود جایگزین کنید example.com. اگر دامنه‌ای ندارید، استفاده از یک دامنه آزمایشی را در نظر بگیرید یا از مرحله تنظیم SSL صرف نظر کنید.

  5. برای اعمال پیکربندی HTTPS، Nginx را مجدداً بارگذاری کنید. کنسولکپی
    $ sudo systemctl reload nginx
  6. پیکربندی Nginx را برای خطاهای نحوی آزمایش کنید. کنسولکپی
    $ sudo nginx -t

    خروجی:

    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
  7. اجازه عبور ترافیک HTTPS از فایروال را بدهید. کنسولکپی
    $ sudo firewall-cmd --permanent --add-service=https
  8. در صورت تمایل، اگر می‌خواهید فقط HTTPS را اعمال کنید، دسترسی HTTP را حذف کنید. کنسولکپی
    $ sudo firewall-cmd --permanent --remove-service=http
  9. برای اعمال قوانین جدید، Firewalld را مجدداً بارگذاری کنید. کنسولکپی
    $ sudo firewall-cmd --reload
  10. وضعیت SELinux را بررسی کنید تا از فعال بودن آن اطمینان حاصل کنید. کنسولکپی
    $ sestatus

    خروجی:

    SELinux status:                 enabled
    SELinuxfs mount:                /sys/fs/selinux
  11. ابزارهای مدیریتی مورد نیاز SELinux را برای semanageدستور زیر نصب کنید: کنسولکپی
    $ sudo dnf install policycoreutils-python-utils -y

    این تضمین می‌کند که semanageابزار برای مدیریت زمینه‌های SELinux در دسترس است.

  12. قوانین زمینه فایل SELinux را به‌روزرسانی کنید تا Nginx بتواند فایل‌های موجود در دایرکتوری سفارشی شما را بخواند. کنسولکپی
    $ sudo semanage fcontext -a -t httpd_sys_content_t "/usr/share/nginx/example(/.*)?"

    زمینه SELinux httpd_sys_content_tبه Nginx اجازه می‌دهد تا پس از نصب به فایل‌های موجود در چندین دایرکتوری دسترسی داشته باشد. اجازه دسترسی به دایرکتوری‌های برنامه‌های وب، Nginx را قادر می‌سازد تا پیکربندی‌ها و فایل‌های برنامه را بخواند.

  13. زمینه جدید SELinux را اعمال کنید. کنسولکپی
    $ sudo restorecon -Rv /usr/share/nginx/example/

    خروجی:

    Relabeled /usr/share/nginx/example from unconfined_u:object_r:usr_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
    Relabeled /usr/share/nginx/example/index.html from unconfined_u:object_r:usr_t:s0 to unconfined_u:object_r:httpd_sys_content_t:s0
  14. برای تأیید صحت عملکرد گواهی، با استفاده از HTTPS به دامنه خود در یک مرورگر وب دسترسی پیدا کنید.
    https://example.com

نتیجه‌گیری

اکنون Nginx را روی AlmaLinux ۹ راه‌اندازی کرده‌اید، آن را برای ارائه محتوای وب استاتیک پیکربندی کرده‌اید و آن را با قوانین HTTPS و SELinux ایمن کرده‌اید. Nginx یک وب سرور انعطاف‌پذیر و با کارایی بالا است که می‌تواند به راحتی برای پشتیبانی از برنامه‌های وب پویا، ادغام‌های backend مانند PHP یا پایگاه‌های داده و استقرارهای سطح تولید، مقیاس‌پذیر باشد. از اینجا، می‌توانید تنظیمات خود را با اضافه کردن قوانین پروکسی معکوس، فعال کردن تعادل بار یا ادغام با پشته‌های برنامه‌هایی مانند Laravel، Flask یا Node.js گسترش دهید.

🖼️ تصاویر

🏷️ کلمات کلیدی

نصب Nginx روی AlmaLinux، نحوه نصب وب سرور Nginx روی AlmaLinux 9، پیش‌نیازها، نصب Nginx روی AlmaLinux 9، خرید نصب Nginx روی AlmaLinux، قیمت نصب Nginx روی AlmaLinux، بهترین نصب Nginx روی AlmaLinux

🧩 JSON-LD

{"@context":"https://schema.org","@type":"WebPage","headline":"نصب Nginx روی AlmaLinux","url":"https://negarnovin.com/docs/how-to-install-nginx-on-almalinux/","datePublished":"2025-09-11T08:48:14+03:30","dateModified":"2025-09-11T08:48:14+03:30","author":{"@type":"Person","name":"نگارنوین"},"publisher":{"@type":"Organization","name":"نگارنوین"},"inLanguage":"fa-IR","description":"How to Install Nginx on AlmaLinux نصب Nginx روی AlmaLinux چگونه Nginx را روی AlmaLinux 9 نصب کنید، بلوک‌های سرور را پیکربندی کنید"}

📈 آمار و ارقام قابل استناد

📄 نحوهٔ استناد به این صفحه

متن ساده:

نصب Nginx روی AlmaLinux — نگارنوین (https://negarnovin.com/docs/how-to-install-nginx-on-almalinux/)، آخرین به‌روزرسانی 2025-09-11

Markdown:

[نصب Nginx روی AlmaLinux](https://negarnovin.com/docs/how-to-install-nginx-on-almalinux/) — نگارنوین (به‌روزرسانی 2025-09-11)