حذف http2 من إعداد سوكيتات TLS — nginx المضيف أقدم من 1.25.1

nginx على السيرفر يرفض التحميل:
  nginx: [emerg] unknown directive "http2" in siro-sockets-tls.conf:30

التوجيه http2 on; لم يُضَف إلا في nginx 1.25.1. والحذف هو الصحيح لا مجرد
حلٍّ سريع: ترقية WebSocket تعتمد على ترويسة Upgrade في HTTP/1.1 ولا معنى
لها في HTTP/2 أصلاً (وproxy_http_version 1.1 مضبوط في الـ location).

تحذير تشغيلي: بعد up --force-recreate انتقلت الحاويتان إلى 127.0.0.1:12020
و13030، فإن فشل nginx -t يبقى المنفذان 2020/3030 بلا أي مستمع (Connection
refused) حتى ينجح reload. رتّب النشر: صحّح الإعداد ⇒ nginx -t ⇒ reload.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Hamza-Ayed
2026-07-27 01:04:32 +03:00
co-authored by Claude Opus 5
parent afb5189515
commit 0e6dd68385
+4 -2
View File
@@ -16,6 +16,10 @@
# ‏بلا أي بناء جديد، والـ JWT في الـ query string يبقى داخل نفق TLS. # ‏بلا أي بناء جديد، والـ JWT في الـ query string يبقى داخل نفق TLS.
# ══════════════════════════════════════════════════════════════════ # ══════════════════════════════════════════════════════════════════
# ‏ملاحظة: لا نضع ‎http2‎ إطلاقاً هنا. أولاً لأن ترقية WebSocket تعتمد على
# ‏ترويسة ‎Upgrade‎ في HTTP/1.1 ولا معنى لها في HTTP/2، وثانياً لأن ‎http2 on;‎
# ‏لم يُضَف إلا في nginx 1.25.1 وnginx المضيف أقدم فيرفضه بـ:
# nginx: [emerg] unknown directive "http2"
# ‏اسم مميّز يتفادى التضارب مع أي map باسم ‎$connection_upgrade‎ قد يكون # ‏اسم مميّز يتفادى التضارب مع أي map باسم ‎$connection_upgrade‎ قد يكون
# ‏CloudPanel معرِّفه أصلاً في سياق http. # ‏CloudPanel معرِّفه أصلاً في سياق http.
map $http_upgrade $siro_connection_upgrade { map $http_upgrade $siro_connection_upgrade {
@@ -27,7 +31,6 @@ map $http_upgrade $siro_connection_upgrade {
server { server {
listen 2020 ssl; listen 2020 ssl;
listen [::]:2020 ssl; listen [::]:2020 ssl;
http2 on;
server_name jordan-siro.intaleqapp.com; server_name jordan-siro.intaleqapp.com;
@@ -71,7 +74,6 @@ server {
server { server {
listen 3030 ssl; listen 3030 ssl;
listen [::]:3030 ssl; listen [::]:3030 ssl;
http2 on;
server_name jordan-siro.intaleqapp.com; server_name jordan-siro.intaleqapp.com;