Я установил Bind в качестве службы разрешения DNS во внутренней сети (работающей в Ubuntu 16.04.02 LTS).
Чего я хочу достичь: Иметь общедоступное доменное имя, указывающее на сервер (пример: domain.com -> 1.2.3.4) m в настоящее время пытается перенести приложение PHP, которое находится в процессе преобразования из файла php на страницу в систему на основе фронт-контроллера, с сервера, на котором работает Apache, на Nginx. На сайте есть ...
В настоящее время я пытаюсь перенести приложение PHP, которое находится в процессе преобразования из файла php на страницу в систему на основе фронт-контроллера, с сервера, на котором работает Apache, на Nginx. На сайте есть несколько других приложений PHP в подпапках, которые используют свои собственные передние контроллеры, но продолжают сталкиваться с проблемами, когда try_files либо не работает для некоторых старых URL-адресов файлов, которые больше не существуют, либо корневые файлы try_files перезаписывают подпапку try_files .
Например:
Запросы для /section.php/123/1/slugtext должны отправляться в PHP как /front.php/section. если я добавлю его в блок PHP, он переопределит / admin / api, и все запросы API будут перенаправлены на front.php.
Я бы получил эту работу в Apache, используя:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^admin/bbapi/(.*)$ /admin/admin_api.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/news/
RewriteRule ^(.*)$ /front.php/$1 [L]
Попробуйте добавить следующее:
location = /section.php {
try_files /front.php$uri =404;
}
Это позволит убедиться, что section.php
передается как есть в front.php
.