وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

روش تنظیم بلوک های سرور Nginx در CentOS 7

0 8
زمان لازم برای مطالعه: 3 دقیقه



بلوک های سرور Nginx به شما این امکان را می دهد که بیش از یک وب سایت را روی یک دستگاه اجرا کنید. این مفید است زیرا برای هر سایت می‌توانید ریشه سند سایت (دایرکتوری حاوی فایل‌های وب‌سایت) را مشخص کنید، یک خط‌مشی امنیتی جداگانه ایجاد کنید، از گواهی‌های SSL مختلف و موارد دیگر استفاده کنید.

در این آموزش روش راه اندازی بلوک های سرور Nginx در CentOS 7 را توضیح خواهیم داد.

پیش نیازها

قبل از ادامه این آموزش مطمئن شوید که پیش نیازهای زیر را برآورده کرده اید:

  • نام دامنه به IP سرور عمومی شما اشاره دارد. ما استفاده خواهیم کرد example.com.
  • Nginx روی سیستم CentOS شما نصب شده است.
  • به عنوان روت یا کاربر با امتیازات sudo وارد شده‌اید.
در برخی از اسناد، خواهید دید Server Blocks به عنوان یک Virtual host. یک مجازی host
یک اصطلاح آپاچی است.

ساختار دایرکتوری را ایجاد کنید

ریشه سند دایرکتوری است که در آن فایل های وب سایت برای یک نام دامنه ذخیره شده و در پاسخ به درخواست ها ارائه می شود. ما می توانیم ریشه سند را در هر مکانی که می خواهید تنظیم کنیم.

ما از ساختار دایرکتوری زیر استفاده خواهیم کرد:

/var/www/
├── example.com
│   └── public_html
├── example2.com
│   └── public_html
├── example3.com
│   └── public_html

اساسا ما در حال ایجاد یک دایرکتوری جداگانه برای هر دامنه ای هستیم که می خواهیم host در سرور ما در داخل /var/www فهرست راهنما. در این دایرکتوری، a ایجاد می کنیم public_html دایرکتوری که دایرکتوری ریشه سند دامنه خواهد بود و فایل های وب سایت دامنه را ذخیره می کند.

پیشنهاد می‌کنیم بخوانید:  نوشتن نظرات در اسکریپت های Bash

بیایید با ایجاد دایرکتوری ریشه برای دامنه خود شروع کنیم example.com:

sudo mkdir -p /var/www/example.com/public_html

برای اهداف آزمایشی، ما یک را ایجاد خواهیم کرد index.html فایل داخل دایرکتوری ریشه سند دامنه.

ویرایشگر متن خود را باز کنید و نسخه ی نمایشی را ایجاد کنید index.html فایل:

sudo nano /var/www/example.com/public_html/index.html

کد زیر را کپی و در فایل پیست کنید:

/var/www/example.com/public_html/index.html
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to example.com</title>
  </head>
  <body>
    <h1>Success! example.com home page!</h1>
  </body>
</html>

در این مثال، ما دستورات را به عنوان یک کاربر sudo اجرا می کنیم و فایل ها و دایرکتوری های جدید متعلق به کاربر root هستند.

برای جلوگیری از هرگونه مشکل مجوز، مالکیت دایرکتوری ریشه سند دامنه را به کاربر Nginx تغییر دهید (nginx):

sudo chown -R nginx: /var/www/example.com

یک بلاک سرور ایجاد کنید

فایل های پیکربندی بلوک سرور Nginx باید به پایان برسد .conf و در آن ذخیره می شوند /etc/nginx/conf.d فهرست راهنما.

ویرایشگر انتخابی خود را باز کنید و یک فایل پیکربندی بلوک سرور برای آن ایجاد کنید example.com.

sudo nano /etc/nginx/conf.d/example.com.conf
شما می توانید فایل پیکربندی را به دلخواه نامگذاری کنید. معمولاً بهتر است از نام دامنه استفاده کنید.

کد زیر را کپی و در فایل پیست کنید:

/etc/nginx/conf.d/example.com.conf
server {
    listen 80;
    listen [::]:80;

    root /var/www/example.com/public_html;

    index index.html;

    server_name example.com www.example.com;

    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 را برای نحو صحیح آزمایش کنید:

sudo nginx -t

اگر خطایی وجود نداشته باشد، خروجی به شکل زیر خواهد بود:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

برای اعمال تغییرات، سرویس Nginx را مجددا راه اندازی کنید:

sudo systemctl restart nginx

در نهایت، برای تأیید اینکه بلوک سرور مطابق انتظار کار می کند باز است http://example.com در مرورگر انتخابی خود، چیزی شبیه به این را خواهید دید:

پیشنهاد می‌کنیم بخوانید:  روش نصب استریسک روی CentOS 7
روش تنظیم بلوک های سرور Nginx در CentOS 7

نتیجه

شما یاد گرفته اید که چگونه یک پیکربندی بلوک سرور Nginx را ایجاد کنید host چندین دامنه در یک سرور CentOS واحد. می‌توانید مراحلی را که در بالا توضیح دادیم تکرار کنید و بلوک‌های سرور اضافی برای همه دامنه‌های خود ایجاد کنید.

اگر می خواهید وب سایت خود را با گواهینامه LetsEncrypt رایگان SSL ایمن کنید، می توانید راهنمای زیر را بررسی کنید:

Nginx را با Let’s Encrypt در CentOS 7 ایمن کنید

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

nginx centos

این پست بخشی از install-lemp-stack-on-centos-7 سلسله.
سایر پست های این مجموعه:


روش نصب Nginx در CentOS 7

Nginx را با Let’s Encrypt در CentOS 7 ایمن کنید

MariaDB را روی CentOS 7 نصب کنید

PHP 7 را روی CentOS 7 نصب کنید

روش تنظیم بلوک های سرور Nginx در CentOS 7
برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-27 09:25:02

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید