HTTPheaderでContent-Type: text/html; charset=nlと吐かれるとAjaxがコケる

通常charsetはutf-8なりeuc-jpなりが吐かれるのだがcharset=nlという意味不明なheaderを吐くサーバが存在する。
そういうサーバの場合、Ajaxで取得しようとするとコケる。

通常charsetはutf-8なりeuc-jpなりが吐かれるのだがcharset=nlという意味不明なheaderを吐くサーバが存在する。
そういうサーバの場合、Ajaxで取得しようとするとコケる。

これだとコケるので
Content-Type: text/html; charset=nl

$xml = file_get_contents($url);
header("Content-type: text/html; charset=UTF-8");
print $xml;

file_get_contentsでまるごと取得してheaderのみ別途吐くととりあえずは解決。