DNS - Использовать публичное доменное имя для внутреннего использования

Я установил 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]
0
задан 15 March 2017 в 13:49
1 ответ

Попробуйте добавить следующее:

location = /section.php {
    try_files /front.php$uri =404;
}

Это позволит убедиться, что section.php передается как есть в front.php .

0
ответ дан 5 December 2019 в 08:24

Теги

Похожие вопросы