#691·chi

route_headers.go 中的子域名示例无法正常工作

作者: jaytxrx创建于 2021年12月28日更新于 2026年7月1日
标签help wanted

我执行了[route headers.go文件](https://GitHub.com/go-chi/chi/blob/master/middleware/route headers.go)中提供的子域实例. 不幸的是,提供的例子没有发挥作用。 问题是sub.example.com去主域页而不是子域页. 有人能告诉我如何解决这个问题吗? 或者如果下面的代码对他们有用呢?

我在测试我的本地Ubuntu PC 然后是/etc/hosts的内容 猫/猫/宿主 127.0.0.1 当地托管人 127.0.0.1 例子.com 127.0.0.1 sub.example.com (中文(简体) ).

主软件包

导入( E)
"fmt" (英语).
"网/http" (中文(简体) ).

"GitHub.com/go-chi/chi/v5" (中文(简体) ).
"GitHub.com/go-chi/chi/v5/ Middleware" (中文(简体) ).
(中文(简体) ).


func 主 () {
r:= chi. 纽鲁特 ()
rSubdomain:= chi. 纽鲁特()

r. uses( 中间软件. Route Headers ()).
Route ("Host"),"example.com","中间软件". 纽 (r).
Route ("Host","*.example.com"),中相软件. 新建(rSubdomain).
处理器)

r. Get ("/","h") (中文(简体) ).
rSubdomain. Get ("/"), h2) (中文(简体) ).

http. listenAndServe (": 8080", r) (中文(简体) ).
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

func h(w http.ResponseWriter, r *http. request) {
fmt. (英语). Fprintf(w,"主域")
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

func h2(w http.responseWriter, r *http. request) {
fmt. (英语). Fprintf(w,"Sub domiain") (中文(简体) ).
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?