Skip to content

Commit 8e2fd55

Browse files
satotakebep
authored andcommitted
livereload: Use X-Forwarded-Host for Codespace
Codespace has 2 types of usage 1. in browser 2. vscode on local computer As long as you select 2 (on local), Hugo handles livereload expectedly. But if you use it in browser, Hugo does not reload on file change, as #9936 said. This issue happens because `CheckOrigin` always fails. Remote server could rewrite request host name. Fix this by respecting `X-Forwarded-Host` header during origin checking After merging this, you can preview changes lively with codespaece in browser. ```sh hugo server --liveReloadPort 443 ``` Close #9936
1 parent 311b800 commit 8e2fd55

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

livereload/livereload.go

+7-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,13 @@ var upgrader = &websocket.Upgrader{
6262
return false
6363
}
6464

65-
if u.Host == r.Host {
65+
rHost := r.Host
66+
// For Github codespace in browser #9936
67+
if forwardedHost := r.Header.Get("X-Forwarded-Host"); forwardedHost != "" {
68+
rHost = forwardedHost
69+
}
70+
71+
if u.Host == rHost {
6672
return true
6773
}
6874

0 commit comments

Comments
 (0)