如何使用 Nginx 反向代理维基百科?

2015-09-22 16:07:24 +08:00
 lingbaoboy
如题!如何反向代理维基百科呢?
server
{
listen 443;
listen [::]:443;
server_name www.xxx.com;
ssl on;
ssl_certificate /home/sslkey/xxx.com.crt;
ssl_certificate_key /home/sslkey/xxx.com.key;

location / {
if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot")
{
return 403;
}
proxy_set_header Host 'zh.wikipedia.org';
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass https://zh.wikipedia.org/;
proxy_set_header Accept-Encoding "";

}
}
我用上面的配置反代维基,电脑访问正常,可是一用手机访问就自动跳到 zh.m.wikipedia.org 去了,我试着在配置中添加 if 语句进行判断,如果是手机的话 proxy_pass https://zh.m.wikipedia.org/,可是一用 if , proxy_pass 就会报错……怎么办呢?
6069 次点击
所在节点    问与答
14 条回复
xfspace
2015-09-22 16:09:31 +08:00
lingbaoboy
2015-09-22 16:12:05 +08:00
@xfspace 这个和我那个效果一样啊,只要用手机访问立马就跳到 https://zh.m.wikipedia.org 去了,手机还是不能访问
xfspace
2015-09-22 16:35:44 +08:00
@lingbaoboy 好了,你现在用 Android/iOS 的 UA 试试,会跳转到 m.wiki 然而,我的 CA 密码忘了签不了证书,随便搞了一个上去。。。
lingbaoboy
2015-09-22 17:07:53 +08:00
@xfspace 你是如何实现的呢?建立了两个代理吗?
我新开了一个端口反代理到手机端,然后在电脑端加入判断,如果是手机访问那么 return 到手机代理那个端口,也算是完美解决了,只有一点,在手机页面最下边点击桌面版的时候,因桌面版检测到时手机访问还返回了手机页面,有点死循环。
xfspace
2015-09-22 17:31:54 +08:00
@lingbaoboy 。。。你这个需求,你自己捣鼓下吧,应该可以的
alect
2015-09-22 17:54:00 +08:00
反代 wiki 还是用 sniproxy 吧。。。
Counter
2015-09-22 18:01:58 +08:00
@alect 用 sniproxy 只能改 hosts 访问
Khlieb
2015-09-22 21:21:56 +08:00
@lingbaoboy 有些浏览器有允许访问桌面端的选项
Khlieb
2015-10-14 15:42:46 +08:00
@xfspace 手机页面又不行了
yicun
2015-10-14 18:01:38 +08:00
@xfspace 手机页面 404 ,还有个 1024 ?
xfspace
2015-10-14 19:00:49 +08:00
@Khlieb
@yicun
。。。我不饭袋手机页面的维基百科了,默认跳到 1024 去了
xfspace
2015-10-14 19:22:26 +08:00
@Khlieb
@yicun 你们需要使用?已经恢复。。。因为我个人不用手机版的,所以
根据 UA 切换手机电脑的明天再搞。
yicun
2015-10-14 19:28:39 +08:00
@xfspace thank you ,有时临睡前用手机看看维基上历史的今天,以前是开 ss ,用你提供的可以省点电
Khlieb
2015-10-14 19:33:50 +08:00
@xfspace 没问题了

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

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

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

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

© 2021 V2EX