بررسی اجمالی #
هر سروری که از طریق پچیم راهاندازی میشود، بهصورت پیشفرض از وبسرور قدرتمند Nginx برای دریافت و مدیریت درخواستهای کاربران استفاده میکند. این وبسرور وظیفه دارد درخواستهای ورودی از طریق پروتکل HTTP یا HTTPS را به پروژهها و سایتهایی که بر روی سرور شما فعال شدهاند، هدایت کند.
زمانی که شما از طریق پچیم اقدام به ایجاد یک سایت بر روی سرور خود میکنید، پچیم بهطور خودکار پیکربندی مورد نیاز برای Nginx را ایجاد و اعمال میکند. این پیکربندی شامل تنظیماتی نظیر دامنه، روت پروژه، تنظیمات SSL، ریدایرکتها و سایر پارامترهای مرتبط با سرویسدهی وب است. نتیجه این فرآیند آن است که درخواستهای ارسالشده به سرور شما، بهدرستی به پروژه مربوطه منتقل شده و پاسخ مناسب از آن دریافت میشود.
اما ما در پچیم تنها به پیکربندی پیشفرض بسنده نکردهایم. در کنار تنظیمات اولیه، شما این امکان را دارید که پیکربندی Nginx مربوط به هر سایت را بهصورت کامل و پیشرفته مدیریت و شخصیسازی کنید. این قابلیت به شما اجازه میدهد تا بر اساس نیاز پروژه خود، تنظیمات اختصاصی مانند هدرها، کش، محدودیتهای امنیتی، پروکسی، بازنویسی آدرسها و سایر موارد را اعمال کنید.
در ادامه این مستند، بخشهای مختلف سیستم مدیریت و پیکربندی Nginx در پچیم را بهتفصیل بررسی میکنیم و توضیح میدهیم که چگونه میتوانید از آنها برای کنترل کامل بر رفتار وبسرور خود استفاده کنید.
آموزش تصویری مدیریت و پیکربندی حرفهای Nginx #
مدیریت پیکربندی Nginx #
در بخش مدیریت Nginx در پچیم، شما به ابزاری پیشرفته برای کنترل کامل مسیر پردازش درخواستهای کاربران دسترسی دارید. این مسیر بهصورت مرحلهای طراحی شده تا بتوانید دقیقاً مشخص کنید که چه پیکربندیهایی در هر بخش از پردازش اجرا شود.
جریان پردازش درخواست #
هر درخواست ارسالی به سرور شما طبق ساختار زیر پردازش میشود:

در پچیم، شما میتوانید در هر یک از این مراحل، پیکربندی Nginx اختصاصی خود را در قالب فایل ویرایش یا اضافه کنید.
1- Before – پیش از پردازش سرور
در این مرحله، میتوانید قوانینی را اعمال کنید که پیش از ورود درخواست به بلاک اصلی سرور اجرا میشوند. این پیکربندیها معمولاً برای تنظیمات امنیتی، محدودیتهای دسترسی یا تعریف متغیرها مناسباند.
مثالها:
- محدودسازی IP:
allow 192.168.1.100;
deny all;
- تعریف متغیر سفارشی:
set $my_custom_var "pachim_value";
2. Server – پردازش اصلی سرور #
این بخش، هسته اصلی پیکربندی سایت شماست. در اینجا میتوانید تنظیماتی مانند دامنه، مسیر پروژه، SSL، Gzip، ریدایرکتها و موارد مشابه را مدیریت کنید.
مثالها:
- تعریف دامنه و روت پروژه:
server {
listen 80;
server_name example.com;
root /home/example/public;
index index.php index.html;
}
- فعالسازی فشردهسازی Gzip:
gzip on;
gzip_types text/plain text/css application/json application/javascript;
- ریدایرکت از HTTP به HTTPS:
if ($scheme = http) {
return 301 https://$host$request_uri;
}
3. After – پس از پردازش سرور #
در این بخش میتوانید تنظیمات تکمیلی مانند افزودن هدرهای امنیتی یا لاگگیری اختصاصی را اعمال کنید.
مثالها:
- افزودن هدر امنیتی:
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options DENY;
- لاگگیری سفارشی:
log_format custom '$remote_addr - $http_user_agent - $request_time';
access_log /var/log/nginx/custom.log custom;
نحوه ویرایش و افزودن پیکربندی #
در هر یک از مراحل before، server یا after، میتوانید:
- فایلهای موجود را مشاهده و ویرایش کنید.
- فایل پیکربندی جدید ایجاد کنید (با پسوند .conf).
- تغییرات خود را ذخیره و در همان لحظه روی سرور اعمال نمایید.
نکته: نیازی نیست ساختار کامل server {} یا http {} را بنویسید. فقط دستورات داخلی کافی هستند، پچیم بهطور هوشمند آنها را در جای مناسب درج میکند.
بررسی و اعمال ایمن تغییرات
پچیم از یک فرآیند امن و مرحلهای برای اعمال تغییرات پیکربندی استفاده میکند تا هیچ تغییری بدون تأیید شما روی سرور اجرا نشود.
جریان اعمال تغییرات:
ویرایش فایلها → بازبینی و تست پیکربندی → تأیید و پیادهسازی روی سرور
چگونه عمل میکند؟
- ویرایش یا افزودن فایلها:
تغییرات شما بهصورت محلی در پچیم ذخیره میشود، اما فوراً روی سرور اجرا نمیشود. - باز شدن بخش «بازبینی و پیادهسازی»:
پس از هر ویرایش، بخشی با عنوان «بازبینی و پیادهسازی» ظاهر میشود که شامل دو دکمه است:- تست پیکربندی
- پیادهسازی روی سرور
- تست پیکربندی:
با کلیک روی این دکمه، پچیم بهصورت خودکار صحت پیکربندی جدید شما را بررسی میکند (معادل اجرای nginx -t). در صورت وجود خطا، پیام هشدار داده میشود تا قبل از اعمال تغییر، آن را برطرف کنید. - پیادهسازی نهایی:
اگر تست موفق باشد، دکمه «پیادهسازی روی سرور» فعال شده و شما میتوانید با اطمینان کامل، تغییرات را روی وبسرور اعمال کنید.
– ویرایش و منتقل کردن بخش لیست قوانین Redirect به زیرشاخه پیکربندی Nginx
– ویرایش و منتقل کردن بخش قوانین امنیتی به زیرشاخه پیکربندی Nginx