На что можно заменить \r\n\ в php или как выявить символ переноса каретки в linux?
в PHP существует константа PHP_EOL - строковое значение перевода каретки под ту платформу на который работает код.
символ перевода каретки, который в php - \r\n
Нет, это не так. Есть константа PHP_EOL, которая в зависимости от платформы будет равна \n или \r\n или еще чему-нибудь. Если вы не используете эту константу, то будет зависеть от кодировки файла.
Проверьте кодировку, BOM,  наличие \n в конце файла.
UPD: еще можно сравнить работающий и неработающий файлы при помощи diff.
Если php работает от имени www-data, не может ли это быть проблемой с правами?