问题描述
比如现在的访问的地址是http://house.o.cn/search_hT1_rTALL_atrue.htm转向的地址是http://house.o.cn/rent/search.shtml?houseType=1&rentType=ALL&agency=true,并且链接http://house.o.cn/rent/search.shtml?houseType=1&rentType=ALL&agency=true的参数和个数都不固定,链接可能是http://house.o.cn/rent/search.shtml?houseType=1或http://house.o.cn/rent/search.shtml?houseType=1&rentType=ALL三个参全有时我的写法是<rule><from>^/rent/search_hT([A-Za-z0-9]*)_rT([A-Za-z0-9]*)_a([A-Za-z0-9]*).htm$</from><to>/rent/search.shtml?houseType=$1&rentType=$2&agency=$3</to></rule>虽然可以把几种可能性都写出来,但是参数最多有19个,一个个写的话一个链接就要写几百个<rule><from></from><to></to></rule>这是最笨的方法,很不现实,因为写不全,会漏掉。所以,请问一下各位高手有没法子写个不管多少个参都通用的?谢谢各位了
解决方案
解决方案二:
正则我不熟,你得找客客。
解决方案三:
19个参数也要搞到路径里?搞这个的目的是为了什么呢?你的服务器没有能力处理?号以后的参数么?
解决方案四:
我的想法是a页面跳转到b页面,那么在a页面将所有的参数通过一定的算法加密做成一个字符串,只传递一个参数,b页面接收参数后解密,获取你传递的参数。可以做一个专门的类进行加密解密
解决方案五:
19个参数全部留在那里,比如默认0或""如京东的三级页面商品筛选
解决方案六:
客客?什么意思?没听懂?这不关服务器什么事?就是要把页面伪静态化,参数还是一样交给服务器处理。不是传参的问题,单单传参当然没问题,而是要把页面伪静态化。
解决方案七:
4楼的意思我大概听懂了,我之前就是这么做的,把所有的参数放到一个链接里,但是需求上说不行啊