首页课件丨教程安装教程Nginx分开代理缓存WordPress网站的移动端与PC端页面

Nginx分开代理缓存WordPress网站的移动端与PC端页面

如果WordPress不是完全的响应式设计,也就是说移动端访问的内容与PC端访问的内容不完全一致时,可能希望将服务器端 nginx 缓存分开,由浏览器确定使用移动端或PC端(桌面)的缓存。本文将介绍如何配置 nginx fastcgi 或反向代理缓存,以便为移动端和桌面端分开缓存。

我们将使用 nginx 指令来检测用户代理并将其归到移动和桌面分类中。

# map the list of user agents must escape ( with \( map $http_user_agent $mobile_user { default "ZHANZHANGB_DESKTOP"; # Android "~Mozilla/5.0 \(Linux; Android" ZHANZHANGB_MOBILE; # Opera "~Opera Mini" ZHANZHANGB_MOBILE; # iOS "~Mozilla/5.0 \(iPhone" ZHANZHANGB_MOBILE; # Windows Phone "~Mozilla/5.0 \(Windows Phone" ZHANZHANGB_MOBILE; }

现在,需要修改缓存密钥,在逻辑上区分桌面和移动用户。fastcgi_cache_key$mobile_user

location ~ \.php$ { try_files $uri =404; # add cache status add_header WP-Zhanzhangb-Fastcgi-Cache $upstream_cache_status; # add the cache skip reason if relevant add_header WP-Zhanzhangb-Skip $skip_reason; add_header X-Exception $exception; include fastcgi_params; fastcgi_pass unix:/run/php/php7.3-fpm.sock; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_cache_bypass $http_secret_header $skip_cache; fastcgi_no_cache $skip_cache; fastcgi_cache WORDPRESS; fastcgi_cache_key "$scheme$request_method$host$mobile_user$request_uri"; fastcgi_cache_valid 404 1m; fastcgi_cache_valid 60m; }

还可以在Nginx的自定义指令中使用此变量,以便在代码块中使用类似的代码来跟踪移动访问者$ mobile_useraccess_loghttp {

log_format customuseragent '[$time_local] $remote_addr $upstream_cache_status ' '$mobile_user $request_method ' '"$request_uri" $upstream_response_time';

然后在nginx虚拟主机配置中,可以自定义访问日志

access_log /var/log/nginx/customuseragent.log customuseragent;

重启nginx,然后可以查看自定义访问日志文件

tail -f /var/log/nginx/customuseragent.log
[04/Apr/2020:13:41:10 +0000] 123.119.135.210 MISS ZHANZHANGB_MOBILE GET "/" 0.272 [04/Apr/2020:13:41:11 +0000] 123.119.135.210 MISS ZHANZHANGB_MOBILE GET "/wordpress?lang=" 0.076 [04/Apr/2020:13:41:18 +0000] 123.119.135.210 - ZHANZHANGB_DESKTOP POST "/wp-admin/admin-ajax.php" 0.072 [04/Apr/2020:13:41:19 +0000] 86.101.236.78 HIT ZHANZHANGB_MOBILE GET "/" - [04/Apr/2020:13:41:20 +0000] 86.101.236.78 HIT ZHANZHANGB_MOBILE GET "/wordpress?lang=" - [04/Apr/2020:13:41:20 +0000] 86.101.236.78 MISS ZHANZHANGB_MOBILE GET "/851.html?is_single=" 0.112 [04/Apr/2020:13:41:23 +0000] 2804:1b2:81:b271:85d2:778c:a336:fd28 MISS ZHANZHANGB_DESKTOP GET "/851.html" 0.140 [04/Apr/2020:13:41:27 +0000] 2804:1b2:81:b271:85d2:778c:a336:fd28 HIT ZHANZHANGB_DESKTOP GET "/625.html?lang=" - [04/Apr/2020:13:41:27 +0000] 2804:1b2:81:b271:85d2:778c:a336:fd28 MISS ZHANZHANGB_DESKTOP GET "/625.html?is_single=808" 0.060 [04/Apr/2020:13:41:28 +0000] 10.164.151.46 MISS ZHANZHANGB_DESKTOP GET "/blog/" 0.144 [04/Apr/2020:13:41:30 +0000] 10.164.151.46 HIT ZHANZHANGB_DESKTOP GET "//blog/5?lang=" - [04/Apr/2020:13:41:30 +0000] 10.164.151.46 MISS ZHANZHANGB_DESKTOP GET "/blog/3?is_single=6539" 0.076

声明: 1.本站大部分内容均收集于网络!若内容若侵犯到您的权益,请发送邮件至:ceo@zunw.cn,我们将第一时间处理! 2.资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持 3.所有资源仅限于参考和学习,版权归原作者所有,更多请阅读网站声明。

给TA赏金
共{{data.count}}人
人已赏金
安装教程

AlexaRank服务将于2022年5月1日关闭

2022-11-9 22:21:59

安装教程

YITHWooCommerceRequestaQuotePremiumv4.4.0

2022-11-9 22:22:01

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
MySSL 安全签章