I'm running into some situations where cURL seems to be ignoring the timeout.
This is a cURL issue and occurs outside of PHP and PHP-Grab-Favicon.
For example, when attempting to get the favicon for https://www.fredmeyer.com/.
When manually using cURL, not much light is shed on this:
http://fredmeyer.com/favicon.ico returns HTTP/1.0 301 Moved Permanently and returns http://www.fredmeyer.com/favicon.ico
In a web browser, going to http://fredmeyer.com/favicon.ico returns the icon with the url https://www.fredmeyer.com/favicon.ico
Manually using cURL with https://www.fredmeyer.com/favicon.ico results in an infinite wait.
Update:
This appears to be a SSL/TLS version issue. If I force TLS 1.3 it gets farther.
Update 2:
get-fav is dropping the protocol (so if https is requested it will downgrade to http), fixed in 202305241340, now the timeout and API fallback is working for fredmeyer but the https://www.fredmeyer.com/favicon.ico should work.
Update 3:
I'm not quite sure why having the protocol (http/https) adjustment fixed the timeout, the timeout should just be the timeout. I'm just going to close this for now with a wary eye.
I'm running into some situations where cURL seems to be ignoring the timeout. This is a cURL issue and occurs outside of PHP and PHP-Grab-Favicon.
For example, when attempting to get the favicon for
https://www.fredmeyer.com/
.When manually using cURL, not much light is shed on this:
http://fredmeyer.com/favicon.ico
returnsHTTP/1.0 301 Moved Permanently
and returnshttp://www.fredmeyer.com/favicon.ico
In a web browser, going to
http://fredmeyer.com/favicon.ico
returns the icon with the urlhttps://www.fredmeyer.com/favicon.ico
Manually using cURL withhttps://www.fredmeyer.com/favicon.ico
results in an infinite wait.Update: This appears to be a SSL/TLS version issue. If I force TLS 1.3 it gets farther.
Update 2: get-fav is dropping the protocol (so if https is requested it will downgrade to http), fixed in
202305241340
, now the timeout and API fallback is working for fredmeyer but thehttps://www.fredmeyer.com/favicon.ico
should work.Update 3: I'm not quite sure why having the protocol (http/https) adjustment fixed the timeout, the timeout should just be the timeout. I'm just going to close this for now with a wary eye.