Mam pewien problem z kanałem RSS na stronie. Kanał RSS generuje poprzez php w ten sposób że w pliku .htaccess znajduje się regułka
Kod
RewriteRule ^rss.xml$ rss.php [L]
plik rss.php wygląda następująco:
$out = '<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0"> <channel> <title>Jakiś tytuł</title> <link>http://mojadomena/wiadomosci/</link> <description>Opis</description> <language>pl</language> <copyright>Copyright (c) Coppy</copyright> <webMaster>Admin</webMaster> <lastBuildDate>'.date("r").'</lastBuildDate> <image> <title>Wiadomości</title> <url>http://mojadomena/wiadomosci/informacje.gif</url> <link>http://mojadomena/wiadomosci/</link> <width>100</width> <height>25</height> </image> '; foreach ($result as $key => $val){ $temat = strip_tags(htmlspecialchars($val->temat)); $description = implode(' ', array_slice(explode(" ", htmlspecialchars(preg_replace(array("/\//","/\s\s+/","/\r\n/"),array(""," "," "),strip_tags($val->tresc)))),0,25)); $temat = iconv('ISO-8859-2', 'UTF-8',$temat); $description = iconv('ISO-8859-2', 'UTF-8', $description); $out .= ' <item> <title>'.$temat.'</title> <description>'.$description.'</description> <link>http://mojadomena/wiadomosci/'.$val->id.'.html</link> <category>wiadomosci</category> </item> '; } $out .='</channel> </rss>'; header('Content-type: text/xml; charset=utf-8'); echo $out;
Pliczek RSS wygenerowany w ten sposób, normalnie się otwiera, z tym ze w panelu dla webmasterów google, zgłasza mi błąd krytyczny:
Cytat
Niedozwolony adres URL
Ten adres URL jest niedozwolony dla mapy witryny w tej lokalizacji
Ten adres URL jest niedozwolony dla mapy witryny w tej lokalizacji
Błędy pojawiają się w liniach <link></link>
Nie wiem dlaczego tak się dzieje skoro przykładowy link wygląda następująco: http://mojadomena/wiadomosci/1450.html
Dodam że ścieżka do pliku rss wygląda następująco http://mojadomena/rss/rss.xml
Czy ktoś może się orientuje co może być powodem tego błędu. I co konkretnie oznacza ten błąd? Może ścieżka do kanału rss powinna wyglądać tak: http://mojadomena/rss.xml ?
Dziękuje za pomoc i pozdrawiam.