В основном все, что ищет sitemap.xml, будет передано в sitemap.php, но без показа пользователю, то есть URL-адрес не изменится для пользователя. Вот часть документации:
Взято из Apache mod_rewrite Флаги :
RewriteRule pattern target [Flag1,Flag2,Flag3]
L | последний
Флаг [L] приводит к тому, что mod_rewrite прекращает обработку набора правил. В большинстве случаев это означает, что если правило соответствует, дальнейшие правила не будут обрабатываться.
Если вы используете RewriteRule в файлах .htaccess или в разделах, важно иметь некоторое представление о том, как обрабатываются правила. Упрощенная форма этого заключается в том, что после обработки правил переписанный запрос передается механизму синтаксического анализа URL-адреса, чтобы выполнить с ним все возможное. Возможно, что при обработке переписанного запроса файл или раздел .htaccess могут встретиться снова, и, таким образом, набор правил может быть снова запущен с самого начала. Чаще всего это происходит, если одно из правил вызывает перенаправление - внутреннее или внешнее, что приводит к тому, что процесс запроса запускается заново.
Поэтому важно, если вы используете директивы RewriteRule в одном из этих контекстов, чтобы вы предприняли явные шаги, чтобы избежать зацикливания правил, а не рассчитывали только на флаг [L], чтобы прекратить выполнение серии правил, как показано ниже.
Приведенный здесь пример переписывает любой запрос в index.php, предоставляя исходный запрос в качестве аргумента строки запроса для index.php, однако, если запрос уже для index.php, это правило будет пропущено.
RewriteCond %{REQUEST_URI} !index\.php
RewriteRule ^(.*) index.php?req=$1 [L]
NC | NoCase
Использование флага [NC] приводит к тому, что RewriteRule сопоставляется без учета регистра. То есть не имеет значения, отображаются ли буквы в верхнем или нижнем регистре в сопоставленном URI.
В приведенном ниже примере любой запрос файла изображения будет передан на ваш выделенный сервер изображений. Совпадение не чувствительно к регистру, поэтому допустимы оба файла .jpg и .JPG, например.
RewriteRule (.*\.(jpg|gif|png))$ <a href="http://images.example.com" rel="nofollow">http://images.example.com</a>$1 [P,NC]
QSA | qsappend
Когда заменяющий URI содержит строку запроса, RewriteRule по умолчанию ведет к удалению существующей строки запроса и замене ее новой сгенерированной. Использование флага [QSA] приводит к объединению строк запроса.
Рассмотрим следующее правило:
RewriteRule /pages/(.+) /page.php?page=$1 [QSA]
С флагом [QSA] запрос на /pages/123?one=two
будет сопоставлен с /page.php?page=123&one=two
. Без флага [QSA] этот же запрос будет сопоставлен с /page.php?page=123
, то есть существующая строка запроса будет отброшена.