Исполнение php кода в отдельно взятом файле *.xml
Задача: сделать возможным исполнение php кода в отдельно взятом файле, тип которого не предполагает такого поведения.
Например: необходимо чтобы XML карта сайта генерировалась заново при каждом обращении к серверу и выводилась по адресу mysite.ru/sitemap.xml
Решение: в файле .htaccess добавляем код
<Files "sitemap.xml"> AddType application/x-httpd-php .xml </Files>
Теперь при обращении к файлу sitemap.xml сервер будет считать, что этот файл является приложением, исполняемым при помощи php интерпретатора. Соответственно весь PHP код, содержащийся в данном файле, выполнится, и браузеру будет отдан его результат.
Замечание 1: Чтобы инструкция AddType сработала, должны быть соответствующие привилегии. Например AllowOverride All или AllowOverride Filelnfo.
Замечание 2: Если у вас фронтендом стоит проксирующий HGINX то указанный файл необходимо внести в исключения, чтобы он отдавался через APACHE как динамический контент.
Оставить комментарий