【发布时间】:2014-05-19 14:14:42
【问题描述】:
我正在使用 Zend_Http_Client (Zend Framework 1) 从网络上抓取一些数据。 在请求之前,Zend_Http_Client 通过 Zend_Uri::validate() 验证给定的 URI。 Zend_Uri::validate() 中的验证规则非常严格,所以我不能抓取很多页面。 例如。
- http://www.investing.com/central-banks/european-central-bank/speeches/euro-banknotes-€-a-means-of-payment-recognised-worldwide-213287 - 因为€
- http://forum.cyanogenmod.pl/index.php/user/19228-łukasz-lech - 因为波兰字母 ł
- https://groups.google.com/forum/#!msg/bruno-magli/RUgdzh7fqhw/DK_lGZi6xq8J - 因为#
我尝试将这个特殊字符添加到 Zend_Uri 规则中,但是有太多特殊字符,我宁愿禁用 Zend_Uri 中的整个验证过程。也许这样的解决方案并不优雅,但我不知道为什么 Zend 强迫我验证 URI...
我担心的是:如果我使用没有 URI 验证的 zend_http_client 从未经验证的 URI 中获取 html,它会不安全吗?
【问题讨论】:
标签: php security url zend-framework web-crawler