后台新手请教几个基本问题

2014-02-11 11:05:32 +08:00
 strak47
1. 现在大致懂了如何让 proxy/browser 缓存,主要是 response header 那些。但不知道如何实现?
比如一个 html 页面包括几个 css, js, image 文件,每个文件都有各自的过期时间。
而 render 的时候只是 render('index.html') ,如何做到为每个文件设置 header ?

2. 我现在的 vps 的 nginx 的 access 记录总会有一个
66.249.74.153 "GET /wiki/238 " 200 "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
虽然写着 googlebot ,但每秒一次的频率会不会有点不正常? 换做你们会 block 掉吗?

3. 于是我把上面的 ip 段在 nginx 里 deny 掉了,现在返给它的只有 403.
但昨天我又在 nginx 里加了一条 rewrite 记录:
rewrite ^/(.*)/$ /$1 permanent;
这样用户访问 /abc/ 会301 跳到 /abc
但发现那个 googlebot 现在 GET /abc/ 不会马上 403 而是先 301 到 /abc 再 403.
我想问为什么不是 deny 优先的,有什么方法让它一来直接 403 forbidden 吗?

先谢谢了!!
2933 次点击
所在节点    问与答
4 条回复
strak47
2014-02-11 14:01:02 +08:00
求不沉……
orzfly
2014-02-11 14:19:18 +08:00
nslookup 66.249.74.153 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53

Non-authoritative answer:
153.74.249.66.in-addr.arpa name = crawl-66-249-74-153.googlebot.com.

反正那个确实是 Googlebot 吧……
orzfly
2014-02-11 14:20:56 +08:00
缓存头用 nginx 加吧,比方说我服务器上用了这个:

location ~* .(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
expires max;
}
strak47
2014-02-11 16:25:36 +08:00
@orzfly 感谢~ 看来果然应该是在 nginx 设置 header 的

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

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

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

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

© 2021 V2EX