apache中伪静态(.htaccess)强制访问手机规则

 更新时间:2016年1月28日 00:50  点击:1678

首页页面为网站更目录m下,后门参数和pc页面参数一样的话就可以这样,否则可能需要修改一下。
手机访问电脑页面时跳转:

 代码如下 复制代码

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /m
RewriteCond %{HTTP_USER_AGENT} “android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos” [NC]
RewriteRule ^(.*)$ /m/$1 [L,R=302] [L,R=302]
</IfModule>

电脑访问手机时跳转:

 代码如下 复制代码

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "!(android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos)" [NC]
RewriteRule ^(.*)$ /$1 [L,R=302]

</IfModule>

最后得说一下,因为RewriteRule ^(.*)$ /m/$1 [L,R=302] [L,R=302]的加入,如果手机页面中要访问非手机页面中的资源时,得用正则排除指定文件,如: RewriteRule ^(.*?(?<!jpg)$) /m/$1 [L,R=302],就不会造成手机访问非手机页面中jpg图片时出现无法访问的问题了。

如果我们没有apache或 htaccess权限时我们可以使用如php来实例

 代码如下 复制代码

//判断是否属手机
function is_mobile() {
 $user_agent = $_SERVER['HTTP_USER_AGENT'];
 $mobile_agents = Array("240x320","acer","acoon","acs-","abacho","ahong","airness","alcatel","amoi","android","anywhereyougo.com","applewebkit/525","applewebkit/532","asus","audio","au-mic","avantogo","becker","benq","bilbo","bird","blackberry","blazer","bleu","cdm-","compal","coolpad","danger","dbtel","dopod","elaine","eric","etouch","fly ","fly_","fly-","go.web","goodaccess","gradiente","grundig","haier","hedy","hitachi","htc","huawei","hutchison","inno","ipad","ipaq","ipod","jbrowser","kddi","kgt","kwc","lenovo","lg ","lg2","lg3","lg4","lg5","lg7","lg8","lg9","lg-","lge-","lge9","longcos","maemo","mercator","meridian","micromax","midp","mini","mitsu","mmm","mmp","mobi","mot-","moto","nec-","netfront","newgen","nexian","nf-browser","nintendo","nitro","nokia","nook","novarra","obigo","palm","panasonic","pantech","philips","phone","pg-","playstation","pocket","pt-","qc-","qtek","rover","sagem","sama","samu","sanyo","samsung","sch-","scooter","sec-","sendo","sgh-","sharp","siemens","sie-","softbank","sony","spice","sprint","spv","symbian","tablet","talkabout","tcl-","teleca","telit","tianyu","tim-","toshiba","tsm","up.browser","utec","utstar","verykool","virgin","vk-","voda","voxtel","vx","wap","wellco","wig browser","wii","windows ce","wireless","xda","xde","zte");
 $is_mobile = false;
 foreach ($mobile_agents as $device) {
  if (stristr($user_agent, $device)) {
   $is_mobile = true;
   break;
  }
 }
 return $is_mobile;
}

调用方法

 代码如下 复制代码

if( is_mobile() ){
  include('手机访问.php文件即可');exit;
}

[!--infotagslink--]

相关文章

  • .htaccess的基本作用及相关语法介绍

    一、.htaccess的基本作用 启用.htaccess,需要修改httpd.conf,启用AllowOverride,并可以用AllowOverride限制特定命令的使用 如果需要使用.htaccess以外的其他文件名,可以用Ac...2016-01-28
  • 西部数码空间伪静态配置方法图解

    今天在使用西部数码空间时发现里面有很多定义好的伪静态规则了,下面我来给大家介绍一下在后面主机面板中配置使用伪静态功能吧,希望文章对各位会带来帮助。...2016-10-10
  • Apache在httpd.conf配置文件中设置伪静态(Rewrite)

    .htaccess文件应该被用在内容提供者需要针对特定目录改变服务器的配置而又没有root权限的情况下。如果服务器管理员不愿意频繁修改配置,则可 以允许用户通过.htaccess文件自...2016-01-28
  • Win7/Windows2003下IIS6.0、IIS7.5的伪静态组件安装和伪静态配置方法

    Win7Windows2003下IIS6.0、IIS7.5的伪静态组件安装和伪静态配置方法,还包括常用的伪静态规则使用方法...2016-01-27
  • 整理的 .htaccess 常用的用法大全

    重新和重定向  注意:首先需要服务器安装和启用mod_rewrite模块。  强制 wwwRewriteEngine onRewriteCond %{HTTP_HOST} ^example\.com [NC]RewriteRule ^(.*)$ http://ww...2016-01-28
  • iis伪静态中文url出现乱码的解决办法

    这篇文章主要介绍了iis伪静态中文url出现乱码的解决办法,需要的朋友可以参考下...2017-07-06
  • apache .htaccess 伪静态页

    apache .htaccess 伪静态页 静态页的地址: http://211.166.45.10/company/new/new_10000.html 指定的动态地址:php?id=10000">http://211.166.45.10/company/new.php?id=...2016-01-28
  • apache中htaccess 301跳转设置汇总

    1.重定向www.111cn.net 到 www.111cn.net 打开.htaccess文件,加入以下规则。 代码如下 复制代码 RewriteEngine On RewriteCond %{HTTP_HOST} !^www....2016-01-28
  • 如何让iis支持伪静态和增加伪静态规则方法

    如果想让iis支持伪静态就必须 先安装php教程 for iis http://www.php.net/downloads.php 然后安装 微软的 urlrewrite http://www.iis.net/download/urlrewrite 下载...2016-09-20
  • Apache支持.htaccess配置方法

    打开httpd.conf文件用文本编辑器打开后,查找 代码如下 复制代码 Options FollowSymLinks AllowOverride None 改为: Options FollowSymLinks AllowOv...2016-01-28
  • C#中实现伪静态页面两种方式介绍

    伪静态技术的诞生,带动了于搜索引擎友好C#中实现伪静态页面有两种方式,本文将一一详解,感兴趣的朋友可以参考下,希望本文对你学习伪静态有所帮助...2021-09-22
  • apache下开启.htaccess 伪静态支持配置方法

    1、首先确定Apache是否加载了Mod_rewrite 模块 方法: 检查 httpd.conf 中是否存在以下两段代码 (具体路径可能会有所不同,但形式基本是一样的): (一)LoadModule rewrite_modu...2016-01-28
  • Apache如何增加.htaccess文件增加用户认证

    首先用htpasswd创建一个密码文件:比如文件名叫做my.passwd /home/apache/bin/htpasswd -c -b my.passwd myusername mypassword 如果增加帐号: /home/apache/bin/htpasswd...2016-01-28
  • 伪静态几种做法

    很多seoer都说把文件做成静态这样对搜索引擎是最好的了,但是像我们这些买别人的虚拟空间,是有限的但是又想以静态形式,如果生成真正的静态如果你的网站有1000000篇文件...2016-11-25
  • apache+php 伪静态写法与iis+php 伪静态区别

    二者没有多大的区别,特别是在前段,后段把以前apache .php?id=$1在iis改成了php\\?id=$1[N,I]写法。 apache+php教程 伪静态写法与iis+php 伪静态区别 这是apache+p...2016-09-20
  • php伪静态之APACHE篇

    1.检测Apache是否支持mod_rewrite通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Modules”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。...2014-06-07
  • 利用.htaccess去除codeigiter的index.php

    个人用的方法,感觉还不错: 代码如下 复制代码 <IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on RewriteBase /poster Rewr...2016-01-28
  • nginx支持.htaccess文件实现伪静态的方法分享

    这篇文章主要介绍了nginx支持.htaccess文件实现伪静态的方法分享,需要的朋友可以参考下...2016-01-27
  • Nginx的伪静态配置中使用rewrite来实现自动补全的实例

    这篇文章主要介绍了Nginx的伪静态配置中使用rewrite来实现自动补全的实例,文中对rewrite的相关参数和正则表达使用也做了介绍,需要的朋友可以参考下...2016-01-27
  • 没有ISAPI Rewrite FULL照样玩多站点伪静态的方法分享

    IIS中增加URL Rewrite功能,最多人选用的是名为“ISAPI Rewrite“的软件,网上下载的破解版,其实破解不完善,最终会不能用...2016-01-27