Как мне настроить nginx для правильной обработки виртуальных путей (путей, обрабатываемых Drupal)?

У меня есть виртуальный /xmlrpc.php маршрут на моем сайте Drupal. Это для совместимости с устаревшими версиями. В конфигурации DDEV по умолчанию nginx возвращает «Входной файл не указан». когда я посещаю https://mysite.ddev.local/xmlrpc.php.

Как я могу попросить Drupal обработать запрос вместо этого?


person wizonesolutions    schedule 18.05.2019    source источник


Ответы (1)


Этот ответ предполагает использование DDEV 1.8.0+.

Создайте новый файл в подпапке nginx каталога .ddev вашего проекта, например .ddev/nginx/xmlrpc.conf. (Файл может называться как угодно, если он заканчивается на .conf.)

Вставьте следующее:

# pass the PHP scripts to FastCGI server listening on socket
location = '/xmlrpc.php' {
  try_files $uri @rewrite;
}

Запустите ddev start, чтобы воссоздать веб-контейнер.

Этот шаблон, также используемый для таких вещей, как обработка /system/files путей (для частных файлов Drupal), предпочтет реальный xmlrpc.php файл, если он существует, а в противном случае попросит index.php (и систему маршрутизации) Drupal обработать запрос.

person wizonesolutions    schedule 18.05.2019