出于某种原因,我想通过 PHP 脚本提供我的 robots.txt。我已经设置了 apache,以便 robots.txt 文件请求(实际上是所有文件请求)来自一个 PHP 脚本。
我用来渲染 robots.txt 的代码是:
echo "User-agent: wget\n";
echo "Disallow: /\n";
但是,它不处理换行符。如何正确地服务器 robots.txt,以便搜索引擎(或任何客户端)正确地看到它?我是否必须为 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。(这是因为我的请求实际上是通过内部代理提供的,但那是另一个问题)。
一些浏览器不显示换行符的评论只正确了一半-> 如果内容类型为 text/plain,现代浏览器会正确显示换行符。我正在选择与实际问题密切匹配的答案,并且没有上述稍微误导性的误解:)。感谢大家的帮助和您的时间!
谢谢
J.P