艺琼网络

.htaccess伪静态突破9个参数限制

浏览:19132人次 发布日期:2018-04-23 来源:艺琼网络

  关于本站原创内容禁止转载的维权通告

通过将RewriteRule拆分并进行连接,可以突破9个传递参数的限制。
  借助.htaccess伪静态组件,我们可以实现很多网页需要的功能,比如URL重写、301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档,其中使用最多的就是URL重写。然而,URL重写指令RewriteRule最多只能携带9个参数,超过9个参数后就无法正常解析。在实际应用中,多于9个参数传递的情况比比皆是,那么,咱们就来研究一下如何突破.htaccess伪静态的9个参数限制。
 
.htaccess伪静态
 
  既然按普通的方式无法实现,那么,可以将代码进行拆分成2行,如下所示:
 
RewriteRule  ^products(.*?)-(.*?)-(.*?)-(.*?)-(.*?)-(.*?)-(.*?)-(.*?)-(.*?).html$  $9&attr1=$1&attr2=$2&attr3=$3&attr4=$4&attr5=$5&attr6=$6&attr7=$7&attr8=$8  [C,NC]
 
RewriteRule ^(.*?)-(.*?)-(.*?)-(.*?)-(.*?)-(.*?)$ products.php?$7&attr9=$1&attr10=$2&attr11=$3&attr12=$4&attr13=$5&attr14=$6 [QSA,L,NC]
 
  需要注意的是,第一行只有9个参数,其中,第9个参数的目的是为了将从第9个起的参数做一个连接并传递给下一行的代码。其中后的C是起到链接其后命令的作用。NC是对大小写不敏感。这样一来,咱们可以用RewriteRule传递更多参数了。
 
  笔者在研究这个问题的时候,走了一些弯路,主要是对链接参数一直没正确理解。程序员朋友可以研究一下上述代码,若有不明白的,欢迎咨询沟通,以便少走一些弯路。

本文网址:https://yiqnet.com:443/news/n822.html
本文由艺琼网络原创,禁止转载、复制、传播,深圳市艺琼网络科技有限公司保留著作权。
您可能感兴趣的内容
Leo 发表于2019-08-20 00:26:50
如果第一行的^products改成products/ 取参数会出错
网站建设价格计算器
我们的客户
Our Customers
酷派集团酷派集团
王牌家教网王牌家教网
云南固恒集团云南固恒集团
深圳广深家教网深圳广深家教网
深圳标准光深圳标准光
深圳前点科技深圳前点科技
深圳通信人在线深圳通信人在线
中建三局中建三局
东莞ASAQUA东莞ASAQUA
深圳智奇艺科技深圳智奇艺科技
广州艺尚舞台灯光广州艺尚舞台灯光
深圳科博鸿业深圳科博鸿业
中欧企业信息交流协会中欧企业信息交流协会
米粒网米粒网
修正康之霸修正康之霸
深圳西阶教育深圳西阶教育
联系电话:13824347551 电子邮箱:service@yiqnet.com
深圳市艺琼网络科技有限公司 2007-2024 版权所有 | ICP许可证:粤ICP备14034579号
公司主营:深圳做网站、深圳网站建设、东莞做外贸网站等,为全国各地做网站的企业提供服务。
旗下产品 企业网站建设 外贸网站建设 模板网站建设
我要
做网站
售前咨询售后支持企业邮箱招商合作
艺琼网络微信
扫一扫关注
艺琼官方微信
深圳市艺琼网络科技有限公司
网站建设专家

有什么疑问吗?
艺琼网站建设专家为您排忧解难。