Categorical blocking of all ICMP is something that ignorant security paranoid people do. It drops out “ping” too.
At the same time they break TCP Path-MTU, and when IPv6 comes into true use, they break their entire network.
In many web-site cases the published one/two IP addresses for the site are actually handled by a “load-balancer switch”, which diverts incoming TCP connection flows to real back-end servers. At the same time they don’t (at all) support ICMP redirecting - which may cause surprising effects with TCP Path-MTU.
(All the world can carry full-size ethernet frames of 1500 bytes each? Yeah, right… Consider PPPoE, and realize that present world is by default running with “don’t fragment” bit set…)
traceroute can use ICMP too, but original UNIX traceroute used UDP, thus all its UNIX descendants use that by default, while some can use also ICMP.