سجل التحديثات

دليل إعدادات Nginx السريع

جدول موجز لقطعة التكوين الشائعة لـ Nginx، للعثور السريع ونسخ كود التكوين

تكوين أساسي
7

تلقائي تعيين عدد عمليات العمل (عادة يساوي عدد نوى المعالج)

worker_processes auto;

تعيين الحد الأقصى لعدد الاتصالات لكل عملية عمل

events {
    worker_connections 1024;
}

تضمين تكوين أنواع MIME

include /etc/nginx/mime.types;
default_type application/octet-stream;

تمكين نقل الملفات بكفاءة

sendfile on;
tcp_nopush on;
tcp_nodelay on;

تعيين وقت انتهاء الاتصال الطويل

keepalive_timeout 65;

تعيين الحد الأقصى لحجم جسم الطلب من العميل

client_max_body_size 100M;

إخفاء رقم إصدار Nginx

server_tokens off;
كتلة Server
6

تكوين كتلة Server الأساسية

server {
    listen 80;
    server_name example.com;
    root /var/www/html;
    index index.html;
}

تكوين عدة نطاقات

server_name example.com www.example.com;

تكوين نطاقات عامة

server_name *.example.com;

تعيين الخادم الافتراضي

listen 80 default_server;

مراقبة عنوان IPv6

listen [::]:80;

تعيين الدليل الجذر أو التسمية البديلة

root /var/www/html;
# أو استخدام alias
alias /var/www/files/;
تطابق Location
7

مطابقة دقيقة للمسار

location = /path {
    # مطابقة دقيقة
}

مطابقة بادئة للمسار

location /api/ {
    # مطابقة بادئة
}

مطابقة التعبيرات النمطية

location ~ \.php$ {
    # مطابقة منتظمة (حساسة لحالة الأحرف)
}

مطابقة منتظمة غير حساسة لحالة الأحرف

location ~* \.\(jpg|jpeg|png|gif)$ {
    # مطابقة منتظمة (غير حساسة لحالة الأحرف)
}

تطابق البادئة الأولوية (أعلى من التعبيرات النمطية)

location ^~ /images/ {\n    # تطابق البادئة الأولوية\n}

ترتيب محاولة الملفات (شائع في تطبيقات SPA)

location / {\n    try_files $uri $uri/ /index.html;\n}

يُسمح بالوصول فقط من الطلبات الداخلية

location /internal/ {\n    internal;\n}
النوعية العكسية
7

تكوين بسيط للوكلاء العكسيين

location /api/ {\n    proxy_pass http://backend:3000/;\n}

تعيين رؤوس طلب الوكيل

proxy_set_header Host $host;\nproxy_set_header X-Real-IP $remote_addr;\nproxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\nproxy_set_header X-Forwarded-Proto $scheme;

تكوين وكيل WebSocket

location /ws/ {\n    proxy_pass http://backend:3000/;\n    proxy_http_version 1.1;\n    proxy_set_header Upgrade $http_upgrade;\n    proxy_set_header Connection "upgrade";\n}

تحديد مجموعة الخوادم العلوية

upstream backend {\n    server 127.0.0.1:3000;\n    server 127.0.0.1:3001;\n    keepalive 32;\n}

تكوين توازن التحميل

upstream backend {\n    least_conn;  # أو ip_hash;\n    server 127.0.0.1:3000;\n    server 127.0.0.1:3001;\n}

إعدادات تجاوز الوقت للوكلاء

proxy_connect_timeout 60s;\nproxy_send_timeout 60s;\nproxy_read_timeout 60s;

تكوين مخزن الذاكرة المؤقتة للوكلاء

proxy_buffering on;\nproxy_buffer_size 4k;\nproxy_buffers 8 4k;
SSL/HTTPS
7

تكوين SSL الأساسي

server {\n    listen 443 ssl http2;\n    ssl_certificate /path/to/cert.pem;\n    ssl_certificate_key /path/to/key.pem;\n}

تعيين إصدارات بروتوكول SSL

ssl_protocols TLSv1.2 TLSv1.3;

تعيين مجموعات التشفير

ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;\nssl_prefer_server_ciphers on;

مخبأ جلسة SSL

ssl_session_cache shared:SSL:10m;\nssl_session_timeout 1d;

إعادة توجيه HTTP إلى HTTPS

server {\n    listen 80;\n    server_name example.com;\n    return 301 https://$server_name$request_uri;\n}

تمكين HSTS

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;

تمكين OCSP Stapling

ssl_stapling on;\nssl_stapling_verify on;\nresolver 8.8.8.8 8.8.4.4 valid=300s;
تكوين التخزين المؤقت
5

تخزين الموارد الثابتة في الذاكرة المؤقتة

location ~* \\.\\.(css|js|jpg|jpeg|png|gif|ico|svg|woff|woff2)$ {\n    expires 30d;\n    add_header Cache-Control "public, immutable";\n}

تعطيل التخزين المؤقت

location /api/ {\n    add_header Cache-Control "no-store, no-cache, must-revalidate";\n}

تكوين التخزين المؤقت للوكلاء

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g;\n\nlocation / {\n    proxy_cache my_cache;\n    proxy_cache_valid 200 1d;\n}

تمكين ETag

etag on;

تمكين طلبات شرطية

if_modified_since before;
ضغط Gzip
4

تكوين ضغط Gzip الأساسي

gzip on;\ngzip_vary on;\ngzip_min_length 1024;\ngzip_comp_level 6;\ngzip_types text/plain text/css text/xml text/javascript application/javascript application/json application/xml;

تعيين أنواع MIME للضغط

gzip_types text/plain text/css text/xml text/javascript application/javascript application/json application/xml;

تمكين الضغط للطلبات المُجدولة

gzip_proxied any;

تمكين الملفات المضغوطة مسبقًا

gzip_static on;
تكوين الأمان
6

تكوين CORS عبر المجالات

add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";
add_header Access-Control-Allow-Headers "DNT,User-Agent,X-Requested-With,Content-Type";

حماية من XSS وحيل النقر

add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options SAMEORIGIN;

استراتيجية الأمان المحتوى

add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'";

تقييد معدل الطلبات

limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;

location /api/ {
    limit_req zone=one burst=20 nodelay;
}

منع الوصول إلى الملفات المخفية

location ~ /\. {
    deny all;
}

قائمة بيضاء للعناوين IP

location /admin/ {
    allow 192.168.1.0/24;
    deny all;
}
تكوين السجلات
6

تكوين سجلات الوصول

access_log /var/log/nginx/access.log;

تكوين سجلات الأخطاء

error_log /var/log/nginx/error.log warn;

تنسيق سجل مخصص

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                '$status $body_bytes_sent "$http_referer" '
                "$http_user_agent" "$http_x_forwarded_for"';

سجلات بتنسيق JSON

log_format json escape=json '{"time":"$time_iso8601","ip":"$remote_addr","method":"$request_method","uri":"$uri","status":$status}';

تعطيل سجلات الوصول

access_log off;

سجلات شرطية (تسجيل الأخطاء فقط)

map $status $loggable {
    ~^[23] 0;
    default 1;
}
access_log /var/log/nginx/access.log combined if=$loggable;
تحسين الأداء
5

ذاكرة التخزين المؤقت لdescriptor الملفات

open_file_cache max=1000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;

تمكين قبول الاتصالات المتعددة و epoll

events {
    multi_accept on;
    use epoll;
}

تخزين FastCGI المؤقت

fastcgi_cache_path /var/cache/nginx/fastcgi levels=1:2 keys_zone=fastcgi:10m;

location ~ \.php$ {
    fastcgi_cache fastcgi;
    fastcgi_cache_valid 200 1h;
}

تقييد عدد الاتصالات

limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_conn addr 100;

تحسين التوقيتات

client_body_timeout 12;
client_header_timeout 12;
send_timeout 10;

📖مقدمة الأداة

دليل الإعدادات السريعة لـ Nginx مصمم خصيصًا للمطورين وموظفي التشغيل. يغطي مجموعة من قطع الإعدادات الشائعة من الإعدادات الأساسية إلى التحسينات المتقدمة، ومرتبة حسب الوظائف، وتدعم البحث السريع والنسخ الفوري. سواء كنت مبتدئًا في Nginx أو مهندس تشغيل ذا خبرة، يمكنك العثور بسرعة على كود الإعدادات التي تحتاجها.

الميزات

1
10 فئات رئيسية، تغطي جميع سيناريوهات الإعدادات الشائعة لـ Nginx
2
أكثر من 60 قطعة إعداد شائعة، تغطي من الأساسيات إلى المتقدمة بشكل شامل
3
يدعم البحث حسب الكلمات المفتاحية، للعثور بسرعة على الإعدادات المطلوبة
4
نسخ كود الإعدادات بنقرة واحدة، لتحسين كفاءة العمل
5
توضيحات صينية واضحة، سهلة الفهم والتعلم
6
تصفح وتصفية حسب الفئة، للعثور بسرعة على الإعدادات ذات الصلة
7
تصميم متجاوب، يدعم عرض على الأجهزة المحمولة
8
تشغيل محلي، لا يتطلب اتصالًا بالإنترنت

الأسئلة الشائعة

🔗أدوات ذات صلة

محلل تعبير كرون

تحقق من صحة بناء جملة كرون ومعاينة أوقات التنفيذ القادمة.

أدوات المطورين
استخدم الآن

تحويل JSON إلى CSV

تحويل بيانات JSON إلى تنسيق CSV

محول
استخدم الآن

JSON إلى YAML

تحويل بيانات JSON إلى تنسيق YAML

محول
استخدم الآن

محول JSON إلى XML

تحويل بيانات JSON إلى تنسيق XML

محول
استخدم الآن

YAML إلى JSON

تحويل إعدادات YAML إلى بيانات بتنسيق JSON

محول
استخدم الآن

منسّق JSON

تنسيق، والتحقق وضغط بيانات JSON

أدوات JSON العملية
استخدم الآن

تصور JSON

عرض بيانات JSON كهيكل شجري

أدوات JSON العملية
استخدم الآن

مولد بيانات JSON

إنشاء بيانات JSON محاكاة للاختبار

أدوات JSON العملية
استخدم الآن

مُترجم JSON لـ i18n

ترجمة كاملة لملف JSON اللغوي مرة واحدة. الصق المحتوى الأساسي لديك، واختر اللغة الهدف، ستستخدم الأداة مفاتيح مسطحة لاستدعاء واجهة OpenRouter API.

أدوات JSON العملية
استخدم الآن

مقارنة فروق JSON

مقارنة الفروق بين بيانات JSON لاثنين

أدوات JSON العملية
استخدم الآن

مولّد رمز الاستجابة السريعة (QR)

إنشاء صورة QR مخصصة

أدوات الصور
استخدم الآن

إنشاء صورة موضعية SVG مخصصة

العرض

أدوات الصور
استخدم الآن

محول Base64 للصور

أداة تحويل الصور إلى Base64 والعكس

أدوات الصور
استخدم الآن

مولد UUID

توليد دفعي لمعرفات UUID فريدة

أدوات المولّد
استخدم الآن

مولّد كلمات المرور

توليد كلمات مرور عشوائية آمنة وموثوقة.

أدوات المولّد
استخدم الآن

تشفير/فك تشفير Base64

أداة ترميز وفك ترميز سلاسل Base64

أدوات النص
استخدم الآن

ترميز/فك ترميز URL

أداة ترميز وفك ترميز لسلاسل URL

أدوات النص
استخدم الآن

مولّد هاش MD5

أداة توليد هاش MD5

أدوات التشفير
استخدم الآن

مولّد هاش SHA256

أداة توليد قيمة هاش SHA256

أدوات التشفير
استخدم الآن

مولّد هاش SHA1

أداة توليد قيمة هاشSHA1

أدوات التشفير
استخدم الآن

أداة ترميز/فك ترميز Hex

أداة ترميز/فك ترميز لسلاسل الست عشرية

أدوات التشفير
استخدم الآن

محوِّل ترميز وفك ترميز ثنائي

أداة ترميز وفك ترميز السلاسل الثنائية

أدوات التشفير
استخدم الآن

أداة تشفير وفك تشفير AES

أداة تشفير/فك تشفير باستخدام خوارزمية AES المتماثلة

أدوات التشفير
استخدم الآن

أداة تشفير وفك تشفير RSA.

أداة RSA غير متماثلة

أدوات التشفير
استخدم الآن

مولد HMAC

أداة توليد HMAC لرمز المصادقة

أدوات التشفير
استخدم الآن

استعلام عنوان IP

الحصول على الموقع الجغرافي ومعلومات الشبكة لعنوان IP

أدوات الشبكة
استخدم الآن

محول الزمن بالميلي ثانية

التحويل بين طابع الزمن بالميلي ثانية والسلسلة yyyy-MM-dd HH:mm:ss.

أدوات الوقت
استخدم الآن
يعرض 27 من الأدوات، بإجمالي 28 أدوات متاحة
    جدول مراجعة سريعة لتكوين Nginx - مرجع سريع للإعدادات الشائعة - IT Tools Collection