通过UA实现手机端电脑端的分离!(重点)
实现Nginx区分PC和手机访问不同的网站是物理上完全隔离的两套网站(一套手机端、一套pc端)
这样带来的好处pc端和移动端的内容可以不一样,移动版网站不需要包含特别多内容。只要包含必要的文字和较小的图片,这样可以节约流量,有好处自然也会加大难度,难题就是需要自己维护两套环境,并且需要自动识别用户所使用的设备并跳转到相应的网站,当判断错误时用户可以手动切换正确的网站!
示例:有两套网站代码。一套PC版放在/usr/local/nginx/html/web,一套移动版放在/usr/local/nginx/html/mobile。只需要修改nginx配置文件,Nginx通过UA自动判断是否来自移动端访问,实现不同的客户端访问不同的内容。
==============================================================
[root@localhost ~]# cd /usr/local/nginx/html/
[root@localhost html]# ls
40x.html 50x.html error.jpg index.html linux.jpg roomc trror.txt
[root@localhost html]# mkdir web mobile
[root@localhost html]# mv index.html web/
[root@localhost html]# vim mobile/index.html
www.shouji.com
[root@localhost html]# vim ../conf/nginx.conf
location / {
root /usr/local/nginx/html/web;
if ( $http_user_agent ~
"(MIDP)|(WAP)|(UP.Browser)|(Smartphone)|(Obigo)|(Mobile)|(AU.Browser)|(wxd.Mms)|(WxdB.Browser)|
(CLDC)|(UP.Browser)|(UCWEB)|(SEMC-Browser)|(Mini)|(Symbian)|(PaIm)|(Nokia)|(Panasonic)|(MOT-)|
(SonyEricsson)|(NEC-)|(Alcate)|(Ericsson)|(BENQ)|(BenQ)|(Amoisonic)|(Amol-)|(Capitel)|(PHILIPS)|
(SAMSUNG)|(Lenovo)|(Mitsu)|(Motorola)|(SHARP)|(WAPPER)|(LG-)|(LG/)|(EG900)|(CECT)|(Compal)|
(kejian)|(Bird)|(BIRD)|(G900/V1.0)|(Arima)|(CTL)|(TDG)|(Daxian)|(DAXIAN)|(DBTEL)|(Eastcom)|
(EASTCOM)|(PANTECH)|(Dopod)|(Haier)|(HAIER)|(KONKA)|(KEJIAN)|(Soutec)|(SAGEM)|(SEC-)|(SED-)|
(EMOL-)|(INN055)|(ZTE)|(iphone)|(Android)|(Windows CE)|(Wget)|(Java)|(curl)|(Opera)")
{
root /usr/local/nginx/html/mobile;
}
index index.html index.html;
}
通过UA实现手机端电脑端的分离!(重点)的更多相关文章
- 手机端移动端的选择框mobileSelect.js使用
手机端移动端的选择框mobileSelect.js使用 文件地址:https://github.com/onlyhom/mobileSelect.js 请感兴趣的自行下载 使用过程 1 引入标签 &l ...
- js 手机端触发事事件、javascript手机端/移动端触发事件
处理Touch事件能让你跟踪用户的每一根手指的位置.你可以绑定以下四种Touch事件: touchstart: // 手指放到屏幕上的时候触发 touchmove: // 手指在屏幕上移动的时候触发 ...
- jquery photoClip支持手机端,PC端 本地裁剪图片后上传插件
支持手机,PC最好的是jquery photoClip插件,下载地址&示例:https://github.com/topoadmin/photoClip demo.html 代码: <! ...
- Charles PC端和手机端抓取HTTP和HTTPS协议请求、HTTPS通用抓包规则
一:HTTP和HTTPS的区别 HTTP是超文本传输协议,被用在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,因此HTTP协议不适合传输一些敏感信息, ...
- 原生js实现响应式轮播图,支持电脑端点击切图,手机端滑动切图
轮播图的实现原理并不难,但是步骤有些繁琐.最近练习了一个轮播图,大部分是跟着网上的教程写的,然后自己做了一点兼容ie8的修改,加了点击切换图片的特效和手机端的滑动特效,让这个轮播图可以在响应式的网站中 ...
- 判断Http请求由手机端发起,还是有电脑端发起
某些情形,我们需要判断Http请求是来自手机端还是电脑端,关键是取得User-Agent的信息,进行筛选判断即可. 核心类如下: public static boolean isMobileDevic ...
- 判断是手机端还是电脑端 isMobile()
1.在PublicController控制器中写好判断手机端方法. <?php namespace Home\Controller; use Think\Controller; class Pu ...
- 原生js为页面添加爱心特效和判断手机端还是电脑端登录
<!-- 为页面添加爱心特效 --> <script type="text/javascript"> (function (window, document ...
- 基于H7的中移动物联例子以及简易操作说明,方便电脑端和手机端远程查看数据
说明: 1.操作前,务必优先看此贴里面的基础例子,先将WIFI连接到路由器上,这样才可以访问外网: https://www.cnblogs.com/armfly/p/11307803.html 2.有 ...
随机推荐
- 使用Eclipse远程调试云服务器上的微信公众项目
云服务器系统:centos 7.3 如何在Eclipse上调试我们在云服务器上的项目呢,下面介绍一下步骤: 1.因为root账号不支持远程调试,首先需要在linux上创建一个新的用户,然后用该用户 ...
- 如何创建redis集群
1.下载redis源码包 wget http://download.redis.io/releases/redis-3.2.4.tar.gz 2.解压并安装 tar xvf redis-.tar.gz ...
- bash_profile文件
bash_profile文件的作用 如何填写 如何生效
- 每天进步一点点------SOPC的Avalon-MM IP核(四) KEY_LED IP定制
/********************************************************************************* * Company : * Eng ...
- js和jsp中怎么去获取后台 model.addAttribute()存入的list<。。。>对象
java 后台List productionGroupList =getProductionGroupList(); model.addAttribute("productionGroupL ...
- Sql性能优化梳理
前言 先简单梳理下Mysql的基本概念,然后分创建时和查询时这两个阶段的优化展开. 1.0 基本概念简述 1.1 逻辑架构 第一层:客户端通过连接服务,将要执行的sql指令传输过来 第二层:服务器解析 ...
- Bugku-CTF加密篇之奇怪的密码(突然天上一道雷电 gndk€rlqhmtkwwp}z )
奇怪的密码 突然天上一道雷电 gndk€rlqhmtkwwp}z
- VMware安装EVE
众所周知,EVE是一个非常强大的仿真环境,能给我们学习带来很大的帮助,这里主要简单记录一下安装在VMware下安装EVE的过程. 1.准备: 我安装的VMware是WORKSTATION 12 PRO ...
- 7,请描述下cookies,sessionStorage和localStorage的区别
7,请描述下cookies,sessionStorage和localStorage的区别 首先,cookie是网站为了标识用户身份而储存在用户本地终端(client side,百科: 本地终端指与计算 ...
- phpstorm问题
主题 PreferencesPreferencesPreferences 重要的事情说3边,而不是default setting Preferences->Appearance & Be ...