از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش تنظیم بلوک های سرور Nginx روی اوبونتو 22.04
سرفصلهای مطلب
Nginx با تلفظ “engine x” یک HTTP منبع باز، با کارایی بالا و سرور پروکسی معکوس است که مسئول مدیریت بار برخی از بزرگترین سایت ها است. روی اینترنت. می توان از آن به عنوان یک وب سرور مستقل، متعادل کننده بار، کش محتوا و پروکسی معکوس برای سرورهای HTTP و غیر HTTP استفاده کرد.
بلوک سرور یک دستورالعمل Nginx است که تنظیمات یک دامنه خاص را تعریف می کند و به شما امکان می دهد بیش از یک وب سایت را اجرا کنید. روی یک سرور واحد برای هر وب سایت، می توانید سند سایت را تنظیم کنید root (دایرکتوری که حاوی فایلهای وبسایت است)، یک خطمشی امنیتی جداگانه ایجاد کنید، از گواهیهای SSL مختلف استفاده کنید و موارد دیگر.
این مقاله روش راه اندازی بلوک های سرور Nginx را شرح می دهد روی اوبونتو 22.04. شما یاد خواهید گرفت که چگونه چندین وب سایت راه اندازی کنید روی یک سرور واحد و تنظیمات هر سایت را مطابق با نیازهای خود سفارشی کنید.
پیش نیازها
قبل از ادامه، مطمئن شوید که شرایط زیر را برآورده کرده اید:
- نام دامنه به IP سرور عمومی شما اشاره دارد.
- Nginx نصب شده است روی سیستم اوبونتو شما
- شما وارد شدید با عنوان root یا کاربر با sudo امتیازات .
شایان ذکر است که در برخی از مقالات مربوط به وب سرورها از عبارت “Blocks Server” به عنوان “Virtual” یاد می شود. host”. یک مجازی host
یک اصطلاح آپاچی است.
ایجاد ساختار دایرکتوری
سند root دایرکتوری است که فایل های وب سایت برای نام دامنه در آن ذخیره می شوند و در پاسخ به درخواست ها ارائه می شوند. می توانید سند را تنظیم کنید root به هر مکانی که می خواهید در این مثال از ساختار دایرکتوری زیر استفاده خواهیم کرد:
/var/www/
├── domain1.com
│ └── public_html
├── domain2.com
│ └── public_html
هر دامنه میزبانی می شود روی سرور سند خود را خواهد داشت root تنظیم کنید /var/www/<domain_name>/public_html
.
با ایجاد آن شروع کنید root دایرکتوری برای دامنه:
sudo mkdir -p /var/www/domain1.com/public_html
بعد، یک را ایجاد کنید index.html
فایل و در دامنه قرار دهید root فهرست راهنما. این فایل به صورت پیش فرض نمایش داده می شود page وقتی به URL دامنه در مرورگر وب خود دسترسی پیدا می کنید.
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>Welcome to domain1.com</title>
</head>
<body>
<h1>Success! domain1.com home page!</h1>
</body>
</html>
هنگام اجرای دستورات به صورت a sudo کاربر، فایل ها و دایرکتوری های تازه ایجاد شده متعلق به root کاربر. برای جلوگیری از هرگونه مشکل مجوز، مالکیت سند دامنه را تغییر دهید root دایرکتوری و تمام فایل های داخل دایرکتوری به کاربر Nginx (www-data
) :
sudo chown -R www-data: /var/www/domain1.com
ایجاد یک بلاک سرور
در سیستمهای اوبونتو، فایلهای پیکربندی بلوکهای سرور Nginx در آن ذخیره میشوند /etc/nginx/sites-available
فهرست راهنما. آنها را می توان با ایجاد پیوندهای نمادین به آن فعال کرد /etc/nginx/sites-enabled
دایرکتوری که Nginx در هنگام راه اندازی آن را می خواند.
ویرایشگر متن خود را باز کنید و فایل بلوک سرور زیر را ایجاد کنید:
server {
listen 80;
server_name domain1.com www.domain1.com;
root /var/www/domain1.com/public_html;
index index.html;
access_log /var/log/nginx/domain1.com.access.log;
error_log /var/log/nginx/domain1.com.error.log;
}
server_name
: دامنه هایی که با این پیکربندی بلوک سرور مطابقت دارند.root
: دایرکتوری که Nginx فایل های دامنه را از آن سرویس می کند.access_log
،error_log
: مکان فایل های گزارش را مشخص می کند.
فایل پیکربندی را می توان هر چیزی که می خواهید نامگذاری کرد، اما معمولاً بهتر است از نام دامنه استفاده کنید.
برای فعال کردن فایل بلوک سرور جدید، یک پیوند نمادین از فایل به آن ایجاد کنید sites-enabled
دایرکتوری که Nginx در هنگام راه اندازی می خواند:
sudo ln -s /etc/nginx/sites-available/domain1.com /etc/nginx/sites-enabled/
برای اطمینان از صحیح بودن نحو پیکربندی 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://domain1.com
در مرورگر انتخابی خود، چیزی شبیه به این را خواهید دید:
نتیجه
ما به شما روش ایجاد بلوک های سرور Nginx و host دامنه های متعدد روی یک سرور اوبونتو می توانید مراحل ذکر شده در بالا را تکرار کنید و بلوک های سرور اضافی برای همه دامنه های خود ایجاد کنید.
اگر به مشکلی برخورد کردید، نظر خود را بنویسید.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1403-03-01 13:57:04