求助, nginx 动态二级域名转换 url 配置

2018-08-07 15:59:43 +08:00
 txwd

不知专业名词怎么叫,举个例子吧。 例如我的网站是:www.abc.com 想要的用户访问: user1.abc.com ,实际访问的是 www.abc.com/u?name=user1 user2.abc.com ,实际访问的是 www.abc.com/u?name=user2

还有,希望用户浏览器的地址显示还是 user1.abc.com ,只是 nginx 做处理。 不知这样的效果有没有解决方案,大家有没有做过类似的。

类似这样的效果: https://www.jb51.net/article/77364.htm

3797 次点击
所在节点    NGINX
5 条回复
sholmesian
2018-08-07 16:26:31 +08:00
用定义变量的泛解析,参考: https://holmesian.org/Nginx_resolver


假设你的后端为 localhost:5555

server
{
listen 80;
server_name ~^(.*).abc.com$;
set $key $1;
location /{
proxy_pass http://localhost:5555/u?name=$key;
}
}
KuroNekoFan
2018-08-07 16:36:09 +08:00
proxy_pass
txwd
2018-08-07 16:47:55 +08:00
@sholmesian 谢谢,我试试。
txwd
2018-08-07 17:31:23 +08:00
@sholmesian

server {
listen 8007;
server_name www.abc.com;
#set $key $1;
location / {
root C:/nginx/web3;
index index.html index.htm;
#proxy_set_header Host $host:8008;
proxy_pass http://www.baidu.com;
}
}
不行啊,这样写直接跳到百度去了
sholmesian
2018-08-08 22:27:22 +08:00
@txwd 增加 proxy_redirect off;

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/477647

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX