Open
Description
Is there an existing issue for this?
- I have searched the existing issues
OS/Web Information
- Web Browser: Chrome 134.0.6998.166 arm
- Local OS: Mac OS Sequoia 15.3.2 (24D81)
- Remote OS: Ubuntu 22.04.5
- Remote Architecture: amd64
code-server --version
: 4.98.2 e2c489d with Code 1.98.2
Steps to Reproduce
- Download the deb from github and install a fresh copy, following the steps described here: https://coder.com/docs/code-server/install#debian-ubuntu (deb, dpkg)
- Create a service entry for a dedicated user (not sudoer)
- Start service
- Set-up nginx reverse proxy (config below)
- Log into code-server
- Open the "Output" tab, and select "window" from the dropdown (see below)
Nginx config:
location /code-server/ {
proxy_pass http://localhost:9000/;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
}
[certbot ssl config not reproduced]
Expected
Not having the log filled in by error messages.
Seems to work on Firefox, with the logs not filling up.
Actual
Logs in output-window keeps getting filled with the same error:
2025-03-27 20:40:42.365 [error] [Window] Failed to construct 'Worker': Access to the script at 'blob:https://SERVERNAME/7c4b764f-20dd-4be6-803c-73dd75b171ff' is denied by the document's Content Security Policy.: SecurityError: Failed to construct 'Worker': Access to the script at 'blob:https://SERVERNAME/7c4b764f-20dd-4be6-803c-73dd75b171ff' is denied by the document's Content Security Policy.
at nls (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:1262:13907)
at new lls (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:1262:15332)
at Iwi.create (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:1262:16079)
at new ils (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:1262:11441)
at Z6 (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:1262:16240)
at new ant (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:2552:9618)
at ont.r (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:2552:9357)
at ont.s (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:2552:9411)
at Object.provideLinks (https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:2552:9227)
at https://SERVERNAME/code-server/stable-e2c489dd00f163b1a8d959965b0c30c1a978a080/static/out/vs/code/browser/workbench/workbench.js:479:18336
Logs
see attached trace.log (in notes).
code-server --verbose > trace.log
[21:07:04] [127.0.0.1][024d80ed][ExtensionHostConnection] Unknown reconnection token (never seen).
[21:07:04] [127.0.0.1][400d0ec0][ManagementConnection] Unknown reconnection token (never seen).
File not found: /usr/lib/code-server/lib/vscode/node_modules/vsda/rust/web/vsda_bg.wasm
File not found: /usr/lib/code-server/lib/vscode/node_modules/vsda/rust/web/vsda.js
Screenshot/Video

Does this bug reproduce in native VS Code?
No, this works as expected in native VS Code
Does this bug reproduce in GitHub Codespaces?
I did not test GitHub Codespaces
Are you accessing code-server over a secure context?
- I am using a secure context.
Activity
fabgilson commentedon Mar 27, 2025
trace.log
code-asher commentedon Mar 27, 2025
Thank you for the logs! Is your server adding any content security policies or is code-server embedded on a page with content security policies?
One weird thing that stands out to me is that it seems to be trying to load
domain.tld/hash
rather thandomain.tld/code-server/hash
, I wonder if we are not handling the sub-path correctly somewhere. I am not seeing the same error despite also using a sub-path, but my Chrome version is older (131) so this could be new.fabgilson commentedon Mar 27, 2025
Hello @code-asher. Thanks for your quick reply. I dug into the other
nginx.conf
files (I don't have full control on the VM). I found the config that is causing the issue:The content-security-policy makes the subpath rejecting the file. Is the handling of subpath under your control, or mine?
I can't get rid of that line, cybersecurity policy here. I'll talk to my IT team to see if I can make it more flexible for the code-server instance though.
Thanks!
code-asher commentedon Mar 28, 2025
That sub-path should be under our control. We do some patching to automatically add the sub-path to various parts of VS Code, and we must have missed this one.
Edit: although, it could also be a miss on VS Code's side. More investigation needed.
fabgilson commentedon Mar 28, 2025
Cool, thanks for confirming.
nowarzz commentedon Apr 9, 2025
It still occurs in 4.99.1 versions
auxtern commentedon May 17, 2025
I recently tried to do something similar to what you did. I tried for hours and finally got it to work. Hopefully this will solve your problem.
From Server

With Reverse Proxy

I use nginx on docker, here is the configuration:
docker-compose.yml
nginx.conf
Good luck friend 😄
code-asher commentedon May 19, 2025
Glad you got it working! I would caution against hard-coding the
Origin
header in the reverse proxy though, at least if either of these two scenarios apply to you: #6052 (comment)If you do remove the hard-coded
Origin
, you will also needproxy_set_header Host $http_host;
.auxtern commentedon May 20, 2025
Thanks it works too.
