Por que não usar um cabeçalho PHP para fazer isso?
<?php
header("HTTP/1.0 404 Not Found");
?>
Irá simplesmente devolver um erro 404.
Olink tem uma lista de todos os cabeçalhos de erro disponíveis.
O motivo pelo qual você não estaria recebendo uma página dizendo "404 - não encontrado" seria que o servidor em si não está enviando um, enquanto o navegador da Web sabe que ele existe (afinal, o servidor está respondendo com 404). O navegador estará recebendo o código de erro correto e o detectará.