最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Nginx為OpenClaw反向代理的實現(xiàn)

 更新時間:2026年04月10日 09:14:16   作者:positiveFunction2  
本文詳細介紹了如何通過Nginx反向代理配置OpenClaw網(wǎng)關的無域名HTTPS訪問方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一、前提與約束

  • 無域名:僅通過 https://<服務器IP> 訪問,需使用自簽名證書(瀏覽器會提示不安全,需手動信任或繼續(xù)訪問)。
  • OpenClaw 要求:遠程訪問必須使用 wss://,不能使用明文 ws://;網(wǎng)關需保持 bind: "loopback",僅由 Nginx 代理訪問。
  • 認證:在 OpenClaw 網(wǎng)關側(cè)啟用 token認證(也可選用 password,見后文)。

二、OpenClaw 網(wǎng)關配置(密碼認證)

在配置 Nginx 之前,先讓 OpenClaw 使用密碼認證,并允許來自 Nginx 的 Origin(即 https://<你的IP>)。

2.1 編輯~/.openclaw/openclaw.json

gateway 段中設置:

"gateway": {
  "port": 18789,
  "mode": "local",
  "bind": "loopback",
  "controlUi": {
    "allowedOrigins": [
      "http://127.0.0.1:18789",
      "http://localhost:18789",
      "https://YOUR_SERVER_IP"
    ]
  },
  "auth": {
    "mode": "token",
    "password": "你的訪問令牌"
  },
  "trustedProxies": ["127.0.0.1"]
}

說明

  • YOUR_SERVER_IP 替換為服務器公網(wǎng) IP(例如 x.x.x.x)。若通過 https://IP:443 訪問,Origin 一般為 https://YOUR_SERVER_IP,無需寫端口。
  • trustedProxies 為可選。當 Nginx 與網(wǎng)關同機部署時,填 ["127.0.0.1"] 可讓網(wǎng)關信任來自本機(Nginx)的代理頭,消除日志中的 "Proxy headers detected from untrusted address" 警告。
  • auth.mode: "password" 表示使用密碼認證;客戶端需在請求中攜帶 Authorization: Bearer <密碼> 或通過 URL 參數(shù)傳遞(見下文訪問方式)。

2.2 重啟網(wǎng)關

systemctl --user restart openclaw-gateway.service
# 或
openclaw gateway start

三、安裝 Nginx

1. Alibaba Cloud Linux 3 / CentOS 8 / RHEL 8

# 1. 更新系統(tǒng)包
sudo dnf update -y# 
2. 添加 Nginx 官方穩(wěn)定源
sudo tee /etc/yum.repos.d/nginx.repo <<-'EOF'
[nginx-stable]
name=nginx stable repo
baseurl=https://nginx.org/packages/rhel/8/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
EOF
# 3. 安裝
 Nginxsudo dnf install -y nginx
# 4. 驗證安裝
nginx -v

2. CentOS 7 / Alibaba Cloud Linux 2

# 1. 更新系統(tǒng)包
sudo yum update -y
# 2. 添加 Nginx 官方穩(wěn)定源
sudo tee /etc/yum.repos.d/nginx.repo <<-'EOF'
[nginx-stable]
name=nginx stable repo
baseurl=https://nginx.org/packages/centos/7/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
EOF
# 3. 安裝 
Nginxsudo yum install -y nginx
# 4. 驗證安裝
nginx -v

3. Ubuntu / Debian

# 1. 更新系統(tǒng)包
sudo apt update && sudo apt upgrade -y
# 2. 安裝
 Nginxsudo apt install -y nginx
# 3. 驗證安裝
nginx -v

四、生成自簽名證書(僅 IP、無域名)

無域名時無法使用 Let's Encrypt,需自簽名證書。將 YOUR_SERVER_IP 換成實際 IP(如 x.x.x.x):

sudo mkdir -p /etc/nginx/ssl
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
  -keyout /etc/nginx/ssl/openclaw.key \
  -out /etc/nginx/ssl/openclaw.crt \
  -subj "/CN=OpenClaw" \
  -addext "subjectAltName=IP:YOUR_SERVER_IP"

注意:若使用公網(wǎng) IP,請?zhí)罟W(wǎng) IP;若僅內(nèi)網(wǎng)訪問,填內(nèi)網(wǎng) IP。瀏覽器訪問會提示"連接不是私密連接",需手動接受或繼續(xù)訪問方可使用。

五、Nginx 反向代理配置

5.1 創(chuàng)建站點配置

找到Nginx配置目錄,我的系統(tǒng)是 Alibaba Cloud Linux 3,Nginx 配置目錄是

/etc/nginx/conf.d/

創(chuàng)建配置文件

vim /etc/nginx/conf.d/openclaw.conf

寫入以下內(nèi)容(將 YOUR_SERVER_IP 替換為實際 IP):

# OpenClaw 反向代理(僅 IP、無域名,HTTPS + WSS)
# 上游:OpenClaw 網(wǎng)關默認端口 18789,僅監(jiān)聽本機
upstream openclaw_backend {
    server 127.0.0.1:18789;
    keepalive 64;
}
server {
    listen 443 ssl;
    listen [::]:443 ssl;
    # 無域名時用 IP 或 default_server
    server_name YOUR_SERVER_IP;
    ssl_certificate     /etc/nginx/ssl/openclaw.crt;
    ssl_certificate_key /etc/nginx/ssl/openclaw.key;
    ssl_protocols       TLSv1.2 TLSv1.3;
    ssl_ciphers         HIGH:!aNULL:!MD5;
    # 日志(可選)
    access_log /var/log/nginx/openclaw_access.log;
    error_log  /var/log/nginx/openclaw_error.log;
    location / {
        proxy_pass http://openclaw_backend;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 86400s;
        proxy_send_timeout 86400s;
    }
}

要點

  • UpgradeConnection "upgrade" 用于 WebSocket 升級,否則 Control UI 與 wss 無法正常工作。
  • proxy_read_timeout / proxy_send_timeout 拉長,避免長連接被 Nginx 斷開。

5.2 啟用站點并檢查配置

nginx -t   # 測試配置是否正確
systemctl restart nginx  # 重啟生效

六、防火墻與安全組

  • 放行 443(HTTPS)。
  • 若希望 HTTP 自動跳轉(zhuǎn) HTTPS,可加 80 并做 redirect(見下節(jié))。
  • 不要對公網(wǎng)開放 18789,網(wǎng)關僅對本機監(jiān)聽。

七、訪問方式

7.1 瀏覽器訪問 Control UI

  • 地址:https://YOUR_SERVER_IP(例如 https://x.x.x.x)。
  • 首次會提示證書不受信任,選擇"高級" → "繼續(xù)前往"即可(自簽名證書正?,F(xiàn)象)。

密碼認證

  • 若使用 token 模式:https://YOUR_SERVER_IP/#token=你的訪問令牌

八、故障排查

8.1 反代后首次訪問的典型問題與處理順序

通過 Nginx 反代首次用瀏覽器訪問 https://YOUR_SERVER_IP/#token=... 時,常會依次遇到下面三類情況,按順序處理即可。

1)提示 "origin not allowed"

  • 原因:瀏覽器請求的 Origin 為 https://YOUR_SERVER_IP(經(jīng) Nginx 訪問時的來源),未在網(wǎng)關白名單中。
  • 處理:在 ~/.openclaw/openclaw.json 的 gateway.controlUi.allowedOrigins 中增加一項 https://YOUR_SERVER_IP(將 YOUR_SERVER_IP 換成實際 IP,無需寫 :443)。保存后重啟網(wǎng)關。

2)日志出現(xiàn) "Proxy headers detected from untrusted address"

  • 原因:網(wǎng)關收到了 Nginx 轉(zhuǎn)發(fā)的 X-Forwarded-For 等代理頭,但未把 Nginx 所在地址視為可信代理。
  • 處理:在 gateway 中增加 "trustedProxies": ["127.0.0.1"](Nginx 與網(wǎng)關同機時)。保存后重啟網(wǎng)關。此步為可選,僅用于消除警告并改善"經(jīng)代理的本地連接"識別。

3)連接失敗:pairing required / not-paired(WebSocket code 1008)

  • 原因:經(jīng)反代訪問時,瀏覽器設備會被視為"遠程設備",需在網(wǎng)關上完成一次設備配對后才能建立 WebSocket。與 Nginx 配置無關。
  • 處理:在運行網(wǎng)關的服務器上執(zhí)行:
openclaw devices list          # 查看 Pending 列表中的 Request ID
openclaw devices approve <Request ID>   # 批準該設備,例如 approve <Request ID>
  • 批準后,刷新瀏覽器并再次訪問 https://YOUR_SERVER_IP/#token=你的令牌,Control UI 應能正常連接。地址欄從 / 跳轉(zhuǎn)到 /chat?session=main 是前端路由行為,屬正常。

8.2 常見現(xiàn)象速查表

現(xiàn)象可能原因處理
502 Bad Gateway網(wǎng)關未運行或 Nginx 連不上 18789在服務器上執(zhí)行 curl -I http://127.0.0.1:18789/,應為 200/3xx;執(zhí)行 openclaw gateway start 或重啟 systemd 服務。
origin not allowed未把 https://YOUR_SERVER_IP 加入 allowedOrigins在 gateway.controlUi.allowedOrigins 中增加 https://YOUR_SERVER_IP,重啟網(wǎng)關。
Proxy headers from untrusted address(日志)未配置可信代理可選:在 gateway 中增加 "trustedProxies": ["127.0.0.1"],重啟網(wǎng)關。
pairing required / not-paired(1008)瀏覽器設備尚未在網(wǎng)關上配對在服務器執(zhí)行 openclaw devices list,再 openclaw devices approve <Request ID>。
能打開頁面但"與網(wǎng)關斷開"WebSocket 未正確代理或 Origin 未放行確認 Nginx 配置中有 proxy_http_version 1.1、Upgrade、Connection "upgrade";確認 gateway.controlUi.allowedOrigins 包含 https://YOUR_SERVER_IP。
認證失敗密碼/ token 錯誤或未傳確認 openclaw.json 中 auth.mode 與 auth.password/auth.token 一致;URL 用 ?token= 或 ?password=(視版本而定),不要用 #。
SECURITY ERROR (ws 明文)直接訪問了 ws:// 或 http://IP:18789必須通過 Nginx 的 https:// / wss:// 訪問,不要直連 18789。

九、參考鏈接

到此這篇關于使用Nginx為OpenClaw反向代理的實現(xiàn)的文章就介紹到這了,更多相關Nginx OpenClaw反向代理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • nginx反向代理jupyter實踐

    nginx反向代理jupyter實踐

    文章講述了如何配置Jupyter Notebook,包括打開配置文件和設置反向代理,反向代理配置中提到,指定HTTP版本為1.1是必要的,因為如果不加,Notebook將無法連接到內(nèi)核并一直顯示斷開,此外,還提到了資源和瀏覽器禁止下載的問題
    2026-03-03
  • Nginx通過geo模塊設置白名單的例子

    Nginx通過geo模塊設置白名單的例子

    今天小編就為大家分享一篇Nginx通過geo模塊設置白名單的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • 淺談Nginx請求限制和訪問控制的實現(xiàn)

    淺談Nginx請求限制和訪問控制的實現(xiàn)

    這篇文章主要介紹了淺談Nginx請求限制和訪問控制的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • 用Nginx反向代理Node.js的方法

    用Nginx反向代理Node.js的方法

    本篇文章主要介紹了用Nginx反向代理Node.js的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • Nginx配置location匹配順序詳細總結(jié)

    Nginx配置location匹配順序詳細總結(jié)

    這篇文章主要介紹了Nginx配置location匹配順序詳解,Nginx是十分輕量級的HTTP服務器,Nginx憑借其穩(wěn)定性、低資源消耗、簡單配置和豐富的功能,從十多年前名不見經(jīng)傳的Web服務器軟件,發(fā)展到如今能夠跟Apache匹敵的地位,需要的朋友可以參考下
    2023-08-08
  • Nginx禁止指定UA訪問的方法

    Nginx禁止指定UA訪問的方法

    這篇文章主要介紹了Nginx禁止指定UA訪問的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • 深度詳解什么是Nginx正向代理與反向代理

    深度詳解什么是Nginx正向代理與反向代理

    這篇文章主要介紹了Nginx正向代理與Nginx反向代理的區(qū)別,比較易懂,需要的朋友可以參考下
    2023-03-03
  • Nginx通過配置文件阻止海外ip訪問的方法步驟

    Nginx通過配置文件阻止海外ip訪問的方法步驟

    這篇文章主要介紹了Nginx通過配置文件阻止海外ip訪問的方法步驟,為防止海外IP刷評論,用戶通過Nginx配置屏蔽海外IP,利用APNIC數(shù)據(jù)提取國內(nèi)IP并生成deny規(guī)則,測試后確認有效,可手動或定時更新配置以保持防護,需要的朋友可以參考下
    2025-07-07
  • 詳解 Nginx代理功能與負載均衡

    詳解 Nginx代理功能與負載均衡

    本篇文章主要介紹了詳解 Nginx代理功能與負載均衡,先描述一些關于代理功能的配置,再說明負載均衡詳細,有興趣的可以了解一下。
    2017-02-02
  • nginx中的location路徑配置(實路徑和虛路徑)

    nginx中的location路徑配置(實路徑和虛路徑)

    這篇文章主要介紹了nginx中的location路徑配置(實路徑和虛路徑),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06

最新評論

徐水县| 博爱县| 天峨县| 韶山市| 金平| 抚顺市| 香河县| 伊宁市| 沙坪坝区| 宣威市| 丹江口市| 乐亭县| 荔浦县| 桓台县| 黄大仙区| 普兰店市| 高陵县| 乐陵市| 鹤山市| 红原县| 安徽省| 时尚| 濮阳县| 遵义县| 桃园县| 和硕县| 昔阳县| 瑞昌市| 东兴市| 乳源| 高青县| 临高县| 甘德县| 原平市| 秦皇岛市| 怀安县| 木兰县| 广平县| 松原市| 二手房| 天峻县|