Статья Каталог
В профиле Nginx nginx.conf, роль расположения блоков кода совпадают, соответствующие запросу пользователя URL, и отобразить его на указанный сервер каталогов.
1. место соответствие команды
1.1 Доступные команды и функции согласования
расположение доступны две команды матч: нормальная строка и регулярное выражение. ~ * ~ А для регулярных выражений, без каких-либо префиксов и префикса используется для обычных строк. Регулярное выражение на основе согласования заказа, в соответствии с первым регулярным выражением после остановки поиска. последовательность Общего соответствия строки игнорируется, она будет выбрать наиболее точное соответствие. Общие команды и согласования действий выглядит следующим образом:
команда | эффект |
---|---|
~ | Выполнение матча показывает обычный чувствительны к регистру |
~ * | Он представляет собой регулярный исполняющий соответствующий INSENSITIVE |
^ ~ | Представляют обычные символы совпадают, если матч варианта, соответствуют только этому варианту не соответствует другим. Обычно используется для сопоставления каталога |
знак равно | Для общего точного соответствия |
Нет Префикс | Для обычных строк |
@ | При определении имени МЕСТОПОЛОЖЕНИЯ, используется внутри, например, направлен error_page, try_files |
Приоритет команды 1.2 соответствия
- Общий точно соответствовать строке, ближайший матч временно сохраняется, если совпадения нет, согласующей строки для общих, если множество соответствия, в соответствии с самым длинным матчем, то матч ^ ~;
- Тогда регулярных выражений в порядке декларации в файле конфигурации, до тех пор, как регулярные выражения, согласование останавливается, возьмите регулярный соответствующий результат выражения;
- Если все совпадения с регулярным выражением не горит, в результате выборки;
- Последний матч «/», если обычная строка и регулярное выражение не на газетах 404 НЕ НАЙДЕН.
- Грубо говоря, "="> "Полный путь"> "^ ~"> " / *"> "/"
Пример 1.3
- Только матч «/.»
Местонахождение = / {
}
- Матч любой запрос, что все URI основаны на «/», больше соответствует символ или регулярное выражение приоритета соответствия.
местоположение / {
}
- Соответствует любой запрос / Каталог / запуск и остановку согласования другого места.
место ^ ~ / Каталог / {
}
- Похожее GIF, JPG, запрос Jpeg конец; ^ ~ но встреченный обрабатываемые им.
место ~ *. (GIF | JPG | JPEG) $ {
}
- Для запроса / индекса / в начале, если состояние линии 404. Он будет согласован с @index_error.
местоположение / индекс / {
error_page 404 @index_error;
}
Расположение @index_error {
...}
2. Общие команды конфигурации: псевдоним, корень, proxy_pass
2.1 псевдоним
Псевдоним конфигурации псевдонимов, чтобы получить доступ к файловой системе, после матча в URL, URL - адрес , согласованный с содержанием замены в поле за псевдонимом.
Пример 1:
Если местоположение сконфигурирован следующим образом (общий матч строки), то запрос Адрес «/ тест / файл», возвращение к файлу «/ USR / местные / файла» .
местоположение / тест / {
псевдоним / USR / местные /;
}
Пример второй:
Если местоположение сконфигурирован следующим образом (регулярные выражения), то запрос на URL - адрес является «/test/love.gif», возвращение к файлу «/usr/local/test1/love.gif».
«$ 1» представляют первые параметр местоположение выражения.
место ~ * / тест / ~ * (GIF | JPG | JPEG) $ {.
псевдоним / USR / местные / test1 / $ 1;
}
2,2 корня
Корневой путь для доступа к файловой системе, после матча в URI, путь к конфигурации корня, а затем прикрепляются к пути запроса.
Пример 1:
Если местоположение сконфигурировано следующим образом (общее совпадение строки), то запрос Адрес «/ тест / файл», возвращение к файлу «/ USR / местный / тест / файл»
местоположение / тест / {
корень / USR / местные /;
}
2.3 proxy_pass
После запросов конфигурации агента к прокси - серверу, согласован с URI, пересылает запрос конфигурации URL - proxy_pass.
Пример 1:
Если местоположение сконфигурирован следующим образом (общий матч строки), то запрос Адрес «/ тест / Привет», направлен «http://192.168.1.111:8089/hello» запрос возвращается.
местоположение / тест / {
proxy_pass http://192.168.1.111:8089/;
}
Примечание: Если вы настроили proxy_pass «/» никакого дополнительного расположения URI, не сконфигурирован «/» не будет добавлен.
3. Последние разностные и брейк ключевых слов
Когда (1) в прошлом, и когда разрыв происходит вне места, как эффект разницы же нет
(2) в прошлом, и когда разрыв происходит на внутреннем месте:
ключевое слово | эффект |
---|---|
последний | Используйте последнюю команду будет прыгать после рамки переписывают расположение, что в очередной раз возобновили ранее поведение |
перемена | Используйте команду останова, не выскочат из сферы места после переписывания, это также место конца жизни |
4. постоянные разниц и перенаправление ключевых слов
ключевое слово | эффект |
---|---|
переписать ... постоянный | Постоянная переадресация журнала запрос код состояния 301 |
переписать ... переадресацию | Временная переадресация журнала код запроса 302 статуса |