Отображение простого текста с помощью PHP

По какой-то причине я хочу обслуживать свой robots.txt с помощью сценария PHP. Я настроил apache так, чтобы запрос файла robots.txt (фактически все запросы файлов) приходил к одному сценарию PHP.

Код, который я использую для рендеринга robots.txt:

echo "User-agent: wget\n";
echo "Disallow: /\n";

Однако он не обрабатывает новые строки. Как правильно серверить robots.txt, чтобы поисковые системы (или любой клиент) правильно его видели? Нужно ли мне посылать специальные заголовки для текстовых файлов?

РЕДАКТИРОВАТЬ 1:

Теперь у меня есть следующий код:

header("Content-Type: text/plain");
echo "User-agent: wget\n";
echo "Disallow: /\n";

, который по-прежнему не отображает символы новой строки (см. http: // sarcastic-quotes. com / robots.txt ).

РЕДАКТИРОВАТЬ 2:

Некоторые люди упомянули, что это нормально и не отображается в браузере. Было просто любопытно, как это отображается правильно: http: //en.wikipedia. org / robots.txt

РЕДАКТИРОВАТЬ 3:

Я загрузил как свой, так и википедию через wget и увидел следующее:

$ file en.wikipedia.org/robots.txt
en.wikipedia.org/robots.txt: UTF-8 Unicode English text

$ file sarcastic-quotes.com/robots.txt
sarcastic-quotes.com/robots.txt: ASCII text

ИТОГОВЫЙ РЕЗЮМЕ:

Основная проблема заключалась в том, что я не устанавливал заголовок. Однако есть еще одна внутренняя ошибка, которая делает Content-Type как html. (это потому, что мой запрос на самом деле обслуживается через внутренний прокси, но это другая проблема).

Некоторые комментарии о том, что браузеры не отображают новую строку, были только наполовину правильными -> современные браузеры правильно отображают новую строку, если тип содержимого текстовый / простой. Я выбираю ответ, который точно соответствует реальной проблеме и лишен приведенного выше слегка вводящего в заблуждение заблуждения :). Спасибо всем за помощь и ваше время!

спасибо

JP ​​

9
задан 22 December 2010 в 09:25
поделиться