code-server部署到Linux并开启Apache反向代理后登陆账户全黑屏问题解决办法

添加反向代理

方法:直接在宝塔面板的网站设置中添加反向代理,如图所示

这样操做会产生 Websocket 报错1006,导致登陆进去显示一片空白页面。

所以放弃使用宝塔面板的反向代理设置,直接手动编辑配置文件,添加apache的支持WebSocket的反向代理配置,让反向代理支持wss协议。

WebSocket协议是一种双向通信协议,在建立连接后,WebSocket服务器和Browser/UA都能主动的向对方发送或接收数据,

因为code-server使用了ws协议与服务器进行双向通信,如果没有Apache反向代理没有添加对ws协议的配置,便会导致页面空白的情况。

首先开启ssl,部署证书并启用强制HTTPS

然后在网站设置的SSL选项的上方找到网站配置文件

如果你的code-server没有HTTPS就将ws配置文件添加到标签<VirtualHost *:80>里面

如果有HTTPS就添加到标签<VirtualHost *:443>里面,添加如下内容,注意要更改code-server服务的端口号。

RewriteEngine On
ProxyRequests On
ProxyVia On
# Proxy Traffic
RewriteCond %{HTTP:Upgrade} =websocket
RewriteRule /(.*)           ws://localhost:6666/$1 [P,L]
RewriteCond %{HTTP:Upgrade} !=websocket
RewriteRule /(.*)           http://localhost:6666/$1 [P,L]

添加在这个位置,然后保存,验证页面是否正常访问。

访问成功

参考链接:How to run code-server with HTTPS by a low privilege user? · Issue #1211 · cdr/code-server (github.com)

感谢GitHuber@TheHllm提供的配置文件

本文放弃所有版权,转载请随意。

知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

评论

  1. 隔壁小孩
    已编辑
    3 年前
    2022-5-23 16:12:25

    网上都是nginx的解决办法还都是搬运的 除了这篇文章外我没找到一篇关于apache的反向代理codeserver报错的解决办法 实测了可用 感谢博主|´・ω・)ノ

    • 博主
      隔壁小孩
      3 年前
      2022-5-23 16:17:24

      感谢认可,我也是头疼了好长时间,网上搜索apache反向代理websocket协议可以找到答案,不过还是感觉nginx好用, 我已经迁移nginx了。

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇