Я пытаюсь создать карту сайта, которая автоматически обновит. Я сделал что-то похожее со своим каналом RSS, но эта карта сайта отказывается работать. Можно просмотреть его живой по http://designdeluge.com/sitemap.xml, я думаю, что основная проблема состоит в том, что не распознавание PHP кодирует. Вот полный источник:
';
?>
http://designdeluge.com/
2010-04-20
weekly
1.00
http://designdeluge.com/about.php
2010-04-20
never
0.5
http://designdeluge.com/".$title."
".$date."
never
0.8
";
} ?>
Проблема состоит в том, что динамический URL (например, те, которых вытягивают от DB) не сгенерирован, и карта сайта не проверит.Спасибо!
Править: Прямо сейчас я просто пытаюсь получить сам код, работающий. У меня есть настроенный как файл PHP на моем локальном сервере тестирования. Код выше используется. Прямо сейчас ничто ничего не отображает на экране или в источнике. Я думаю, что сделал синтаксическую ошибку, но я ничего не могу найти. Любой и вся справка ценятся!
РЕДАКТИРОВАНИЕ 2: хорошо, я разобрался в нем парни. По-видимому, я должен был повторить определение XML с PHP. Заключительный код отправляется выше.Спасибо за помощь!
Если вы посмотрите на sitemap.xml
, который сгенерирован (с использованием исходного кода, в вашем браузер, например) , вы увидите следующее:
<?php header('Content-type: text/xml'); ?>
<?xml version="1.0" encoding="UTF-8" ?>
<urlset xmlns="http://www.google.com/schemas/sitemap/0.84" xmlns:xsi="http:/
...
php
, присутствующий в этом выводе, показывает, что код PHP не интерпретируется .
Вероятно, это потому, что ваш веб-сервер не распознает .xml
как расширение файлов, которые должны содержать код PHP .
Как минимум два возможных решения:
sitemap.php
, чтобы оно интерпретировалось вашим сервером.
Я бы добавил другое решение:
sitemap.php
, содержащий код sitemap.xml
URL-адрес фактически указывает на файл sitemap.php
Таким образом, у вас будет URL-адрес sitemap.xml
, который хорош (обязательно?) , но поскольку код будет в sitemap.php
, он будет интерпретирован.
См. Apache mod_rewrite
.