Plesk - обратный прокси-сервер nginx - игнорировать подпапку - PullRequest
0 голосов
/ 12 июня 2018

У меня есть сайт, который ранее размещался только через Apache, и мы используем скрипт для создания динамических страниц.Запрос попадает в подпапку со скриптом, который ищет 404 ошибки, и если URI запроса находится в списке, то динамическая страница обслуживается.Это очень урезанная версия скрипта, но она выглядит примерно так:

if (preg_match("/\/shop-search\/(.*)-shoes$/", $_SERVER['REQUEST_URI'], 
$matches)) {
header("HTTP/1.1 200 OK");
$colorName = trim(strip_tags($matches[1]));
$pagenum = 1;
$mainURL = "/shop-search/" . $colourName . "-shoes/";
$color = array(
    "Blue" => "Blue",
    "Red" => "Red",
);
if (isset($color[$colorName])) {
    $keywords = $color[$colorName];
    $pageType = "colour";
    require_once "by-color.php";
    exit;
}
}

В Apache он перехватывает 404, проверяет и затем отображает страницу с сообщением 200, браузерне обслуживается 404. С обратным прокси-сервером nginx страница по-прежнему отображается, но 404 передается в браузер, так что это означает, что страницы содержат ошибки для робота Googlebot и страницы выпали из индекса.Есть ли какой-либо способ остановить обработку этой папки nginx вообще или любой другой способ остановить перемещение 404 обратно в nginx до того, как будет отправлен код 200?

...