Чтобы не передавать мусор в серверную часть, у меня есть строгое регулярное выражение для location
директива. Выглядит это так:
location ^~ "/(some|stuff|more|bar|etc(-testing)?)/[a-zA-Z0-9]+/...(more|restrict).ext {
# other directives
}
Я хотел бы свернуть строку на 80 символов, есть ли способ разделить конфигурацию? Следующее приводит к синтаксической ошибке, но это то, что я ищу:
location ^~ "/(some|stuff|more|bar|etc(-testing)?)/[a-zA-Z0-9]+/"\
"...(more|restrict).ext" {
# results in a literal newline (%0A) being accepted
location ^~ "/(some|stuff|more|bar|etc(-testing)?)/[a-zA-Z0-9]+/
...(more|restrict).ext" {
Намеков в документации найти не удалось (http://wiki.nginx.org/ConfigNotation ни http://wiki.nginx.org/HttpCoreModule#location упомянуть что-нибудь о линиях сгиба)
Я не думаю, что ты сможешь это сделать.
nginx обрабатывает все пробелы одинаково, поэтому, даже если вы попытаетесь разбить свою строку таким образом, и nginx сможет проанализировать ее так, как вы планировали, вы получите регулярное выражение с кучей пробелов в нем, что, я уверен, не так. т что вы хотите. Если nginx не сможет его проанализировать, что более вероятно, вы просто получите синтаксическую ошибку.
Вам просто придется жить с несколькими длинными строками или составлять менее сложные регулярные выражения.