You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在OpenLiteSpeed中配置反向代理部署Node.js应用?

OpenLiteSpeed 配置 Node.js 应用反向代理实现子路径无端口访问

前提准备

确认你的Node.js应用已通过pm2正常运行在8080端口,直接访问localhost:8080能正常打开前后端页面。

具体配置步骤

  1. 登录OpenLiteSpeed管理后台(默认端口7080),进入目标虚拟主机的配置页面(比如默认的Example虚拟主机)。
  2. 添加反向代理上下文
    • 切换到「Context」标签页,点击「Add」按钮。
    • 上下文类型选择Reverse Proxy,URI路径填写/downtime-app。
    • 「Addresses」栏填入http://127.0.0.1:8080,这是pm2运行Node.js应用的地址。
    • 勾选「Rewrite Resp Header」选项,确保响应头中的路径会自动替换为/downtime-app,避免跳转时出现端口或路径错误。
  3. 配置前端路由兼容(解决刷新503问题)
    • 在刚创建的/downtime-app上下文里,切换到「Rewrite」标签页。
    • 开启「Enable Rewrite」,然后添加以下规则:
      RewriteRule ^/downtime-app$ /downtime-app/index.html [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^/downtime-app/(.*)$ /downtime-app/index.html [L]
      
    这些规则会把非静态文件/目录的请求转发到前端入口文件,解决单页应用刷新503的问题。
  4. 生效配置
    • 点击页面右上角的「Save」保存设置,再点击「Graceful Restart」重启OpenLiteSpeed,让配置生效。
  5. 验证
    • 访问localhost/downtime-app,测试页面加载、路由跳转、刷新操作是否正常,同时确认后端接口能通过该路径正常调用。

关于之前.htaccess无效的说明

OpenLiteSpeed启用.htaccess需要在虚拟主机配置中开启「Allow Override All」,但反向代理场景下,直接通过Rewrite规则指向静态文件无法正确转发Node.js服务的请求,必须通过反向代理上下文将请求转发到pm2运行的端口,再配合路由重写处理前端单页应用的刷新问题。

内容的提问来源于stack exchange,提问作者Briansay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 07:52:22