Heim > Backend-Entwicklung > PHP-Tutorial > Nginx如何判断手机

Nginx如何判断手机

WBOY
Freigeben: 2016-07-06 13:51:58
Original
1535 Leute haben es durchsucht

计划使用Nginx进行缓存,缓解后端压力。网站有手机和桌面两个版本,目前用PHP进行简单的判断,代码如下:

<code>function isMobile(){
    
    $ua = $_SERVER['HTTP_USER_AGENT'];
    
    $ismobile = preg_match('/Android|iPhone|IEMoble|Mobile/i', $ua);
    
    $ismobile = preg_match('/iPad|Tablet/i', $ua) ? 0 : $ismobile;
    
    $ismobile = isset($_COOKIE['ismobile']) ? 1 : $ismobile;
    
    return $ismobile;
    
}</code>
Nach dem Login kopieren
Nach dem Login kopieren

在PHP判断的思路是这样的:

  1. 判断UA有无Android|iPhone|IEMoble|Mobile字样,有则为手机

  2. 再判断UA中有无iPad|Tablet字样,有则不是手机

  3. 如果存在名为ismobile的cookie,则无论UA强制设为手机
    我希望实现的是将以上判断逻辑直接在Nginx上实现,并设置为cache key(当然能同时向后端发送额外的标头更好,这样可以保证前后端判断结果绝对一致,哈哈)

因为本人英语很差,又对Nginx语法等不了解,所以想请教下大神,能否给个DEMO,谢谢!

回复内容:

计划使用Nginx进行缓存,缓解后端压力。网站有手机和桌面两个版本,目前用PHP进行简单的判断,代码如下:

<code>function isMobile(){
    
    $ua = $_SERVER['HTTP_USER_AGENT'];
    
    $ismobile = preg_match('/Android|iPhone|IEMoble|Mobile/i', $ua);
    
    $ismobile = preg_match('/iPad|Tablet/i', $ua) ? 0 : $ismobile;
    
    $ismobile = isset($_COOKIE['ismobile']) ? 1 : $ismobile;
    
    return $ismobile;
    
}</code>
Nach dem Login kopieren
Nach dem Login kopieren

在PHP判断的思路是这样的:

  1. 判断UA有无Android|iPhone|IEMoble|Mobile字样,有则为手机

  2. 再判断UA中有无iPad|Tablet字样,有则不是手机

  3. 如果存在名为ismobile的cookie,则无论UA强制设为手机
    我希望实现的是将以上判断逻辑直接在Nginx上实现,并设置为cache key(当然能同时向后端发送额外的标头更好,这样可以保证前后端判断结果绝对一致,哈哈)

因为本人英语很差,又对Nginx语法等不了解,所以想请教下大神,能否给个DEMO,谢谢!

英语差不是理由,我英语基本上没及格过呢,还不是照样Google?大不了用翻译呗。
善用搜索,很多问题都可以解决。
这是我用Google搜索“nginx判断手机”找到的第一篇文章:传送门

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage