Nginx 问题求解!!

2015-05-28 14:59:58 +08:00
 MaiCong

我通过 nginx 的 $upstream_http_content_type 判断类型是否是图片,代码如下:

add_header X-Content-Type $upstream_http_content_type;

if ($upstream_http_content_type ~* ^image/(jpg|jpeg|pjpeg|png|x-png|gif|bmp|x-icon|webp|svg\+xml)) {
    return 301;
}

可结果是 X-Content-Type 倒是有了,却没有 301 跳转?

理论上应该酱紫啊:

3502 次点击
所在节点    NGINX
8 条回复
rrfeng
2015-05-28 15:36:00 +08:00
看不懂你想做什么……把图片请求全部 301?

add_header 是给 response 增加 header,既然都 response 了还怎么 301.
MaiCong
2015-05-28 15:46:18 +08:00
@rrfeng = = 请看 附言。我是想对图片类型单独处理。
lujiajing1126
2015-05-28 18:32:40 +08:00
有CDN啊?
wy315700
2015-05-28 18:34:19 +08:00
不是应该用

rewrite ^/(.*)$ http://www.XXX.com/$1 permanent;

Dreista
2015-05-28 19:44:31 +08:00
maicong.me 在手机端访问时顶栏高度是否可以调整,在 iPhone 4S 一类的小屏幕机型上不是很友好。
MaiCong
2015-05-28 20:11:45 +08:00
@lujiajing1126
@wy315700
/url 后面是网址,然后就反代这个网址。如果是图片类型就单独处理,但是用$upstream_http_content_type 正则匹配无效啊,不执行。。。
MaiCong
2015-05-28 20:12:54 +08:00
@Dreista 😂 这个网站只是挂个页面。。。
ryd994
2015-05-28 21:01:21 +08:00
@MaiCong 你这样不行的,if是在rewrite阶段就执行,而upstream变量至少要到content阶段后才有值。
为什么不能用URL判断?对方是下载站?

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

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

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

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

© 2021 V2EX