刚刚解决了一个问题跟大家分享下。(parse_str 的长度问题。)
错误如下:
Fatal error: parse_str(): Input variables exceeded 100. To increase the limit change max_input_vars in php.ini. in /data/wwwroot/v/ask_main_test_last.php on line 1916
在调用PHP的parse_str函数 解析 URL的时候 报了这个错误,根据错误提示,是把 max_input_vars 设置成 100了,超出长度就出错了。现在系统中最长是100.当初这么做是为了修补一个漏洞 (http://hi.baidu.com/ruhaole/item/47ebbdf1b130e613d6ff8cad )
从搜狗搜索过来的URL 参数长度超出100:
Referer http://www.sogou.com/web?query=%B8%D0%C3%B0%C1%CB%B3%D4%CA%B2%C3%B4%BA%C3%B5%C4%BF%EC&_asf=www.sogou.com&_ast=1350633950&w=01015002&p=40040100&oq=%B8%D0%C3%B0%C1%CB%B3%D4%CA%B2%C3%B4&ri=0&sourceid=sugg&stj=0%3B4%3B0&stj2=0&stj0=0&stj1=4&hp=40&hp1=0&sut=4858&sst0=1350633950452
最后该代码好了。
从
parse_str($http['query']);
改为
parse_str(substr($http['query'],0,100));
大家以后在parse_str的时候 一定要注意长度啊。
错误如下:
Fatal error: parse_str(): Input variables exceeded 100. To increase the limit change max_input_vars in php.ini. in /data/wwwroot/v/ask_main_test_last.php on line 1916
在调用PHP的parse_str函数 解析 URL的时候 报了这个错误,根据错误提示,是把 max_input_vars 设置成 100了,超出长度就出错了。现在系统中最长是100.当初这么做是为了修补一个漏洞 (http://hi.baidu.com/ruhaole/item/47ebbdf1b130e613d6ff8cad )
从搜狗搜索过来的URL 参数长度超出100:
Referer http://www.sogou.com/web?query=%B8%D0%C3%B0%C1%CB%B3%D4%CA%B2%C3%B4%BA%C3%B5%C4%BF%EC&_asf=www.sogou.com&_ast=1350633950&w=01015002&p=40040100&oq=%B8%D0%C3%B0%C1%CB%B3%D4%CA%B2%C3%B4&ri=0&sourceid=sugg&stj=0%3B4%3B0&stj2=0&stj0=0&stj1=4&hp=40&hp1=0&sut=4858&sst0=1350633950452
最后该代码好了。
从
parse_str($http['query']);
改为
parse_str(substr($http['query'],0,100));
大家以后在parse_str的时候 一定要注意长度啊。