Как определить путь для представления типа /news/rss.xml ?

Главные вкладки

Аватар пользователя VasyOK VasyOK 28 февраля 2023 в 18:33

Приветствую специалистов по архитекторе Друпала.

Делаю rss ленту. Стандартный функционал по rss из views меня не устраивает, поэтому хочу вывести нужные поля в page-представление и создать таким образом ленту.
Основная проблема: как сделать у этого представления путь: /news/rss.xml ?

Сейчас если задаю подобный путь меня перенаправляет на
sitename.com/news/rss.xml?q=/news/rss.xml

Комментарии

Аватар пользователя OldWarrior OldWarrior 28 февраля 2023 в 23:18

Судя по параметру ?q= пытается перенаправить на корневой index.php
Вы пробовали указывать путь представления без слеша в начале (или наоборот) ?

Аватар пользователя OldWarrior OldWarrior 1 марта 2023 в 0:16

Решить вопрос синонимами не пробовали?
Скажем путь представления - любой произвольный, например, /news_rss, а далее для него создать синоним уже вида /news/rss.xml

Аватар пользователя VasyOK VasyOK 2 марта 2023 в 15:09

Проблема в том, что на реальном сервере все как надо, а у меня на локалке возникает перенаправление. Значит это где-то настраивается....

Аватар пользователя OldWarrior OldWarrior 2 марта 2023 в 17:57

Попробуйте определить и выделить проблемные части пути для указанного вами адреса /news/rss.xml.

Например:
/news - ok
/news/rss - ok
/news/rss.xml - fail

Возможно, что-то подскажет. Может, в докере где-то специальные дополнительные настройки переадресации апача для файлов .xml

.htaccess полностью идентичен тому, что на сетевом хостинге?

Аватар пользователя VasyOK VasyOK 2 марта 2023 в 17:59

/news - ok
/news/rss - ok
/news/rss.xml - fail

как раз так и происходит. Любой путь, что заканчивается на .xml редиректит.

.htaccess - да идентичен.

Аватар пользователя OldWarrior OldWarrior 2 марта 2023 в 18:09

Ну вы не указали версию, но, скажем, в дефолтном .htaccess для D9 отсутствует какая-либо спец.обработка для .xml - и вообще нет никаких упоминаний.

1. Возможно, где-то в конфе апача на докере что-то прописано. Мне кажется это самым первым кандидатом.

2. Либо, как вариант - какой-то друпаловский хендлер криво обрабатывает запросы .xml. Может, кастомный модуль.

Аватар пользователя VasyOK VasyOK 2 марта 2023 в 18:20

"в конфе апача на докере что-то прописано" - тоже к этому склоняюсь.
А как узнать где это конфиг лежит? Что в гугл вбить? "docker4drupal apache config" - не находит...

Аватар пользователя OldWarrior OldWarrior 2 марта 2023 в 18:32

Не знаю, докер не использую. Видимо, как обычно, искать где-то в /etc/apache2/conf

Вот такое ещё упоминание попалось в гугле:
./conf/inetprocess/vhost.conf:/etc/apache2/sites-available/vhost.conf
Но это для виртуальных хостов. Где-то рядом должны лежать и основные конфы.