Nginx: доступ к одному и тому же контенту с нескольких URL-адресов

Я пытаюсь настроить nginx так, чтобы к одному и тому же статическому контенту можно было получить доступ через два разных URL без любые перенаправления.

Например, если клиент вводит / путь / к / A в своем браузере, я хочу, чтобы он получал тот же контент, что и / путь / к / B .

Я пробовал использовать rewrite , но в этом случае Nginx, похоже, дает мне перенаправление 301.

Например:

server {
    root /my/www/data;

    rewrite ^/path/to/A(.*)$ /path/to/B$1;
    # Note: /my/www/data/path/to/B *does* actually exist on disk.
    # However, the .../A version does not.
}

Думаю, один из способов сделать это - использовать символическую ссылку / my / www / data / A , чтобы указать на / my / www / data / B , но я пытаюсь сделать это, используя конфигурацию сервера, а не уловки файловой системы.

Мои вопросы:

  1. Как это можно сделать?
  2. При каких обстоятельствах модуль перезаписывает выполняет внутреннее перенаправление вместо отправки 30-кратного кода клиенту? Я не могу точно сказать из документации.

Примечание. Это очень похоже на другой вопрос: Nxginx перезаписывает URL без перенаправления м пытаюсь сделать это, используя конфигурацию сервера, а не уловки файловой системы.

Мои вопросы:

  1. Как это можно сделать?
  2. При каких обстоятельствах модуль rewrite выполняет внутреннее перенаправление или . отправка 30-кратного кода клиенту? Я не могу точно сказать из документации.

Примечание. Это очень похоже на другой вопрос: Nxginx перезаписывает URL без перенаправления м пытаюсь сделать это, используя конфигурацию сервера, а не уловки файловой системы.

Мои вопросы:

  1. Как это можно сделать?
  2. При каких обстоятельствах модуль rewrite выполняет внутреннее перенаправление или . отправка 30-кратного кода клиенту? Я не могу точно сказать из документации.

Примечание. Это очень похоже на другой вопрос: Nxginx перезаписывает URL без перенаправления и сколько процессорного времени он использует. Я хотел бы добавить процессы, которые также используют много ...

У меня есть скрипт python, который принимает процессы в формате csv и решает все в зависимости от того, что запущено, его имени и сколько времени процессора он использует. Я хотел бы добавить в указанный сценарий процессы, которые также используют много памяти. Проблема, однако, в том, что команда, которую я использовал для вывода в формате csv, похоже, не имеет параметра, позволяющего распечатать использование памяти RSS. Однако у меня есть доступ к значению VSZ ... Пока что у меня есть следующая команда:

ps -e -o "\"%p\",\"%r\",\"%U\",\"%z\",\"%C\",\"%c\",\"%a\""
"  PID"," PGID","USER    ","   VSZ","%CPU","COMMAND        ","COMMAND                    "
"22418","22418","root    ","  4956"," 0.0","my_proc","my_proc arg1 arg2"
"26175","26175","root    "," 14020"," 0.0","bash","-bash"

До того, как кто-нибудь спросит ... Да, я могу получить значение vss, если я не хочу, чтобы значение было распечатано. Пример:

 ps -o "rss"
  RSS
  604
 2972

Однако, это не все хорошо и аккуратно вводится в мой сценарий, чтобы помешать глупым людям делать глупости. Я перепробовал каждую букву известного мне алфавита, кроме русской, чтобы увидеть, соответствует ли одно из значений красивым печатным значениям ps. Но увы, это не одна буква. Я не могу помочь, но чувствую, что есть лучший способ вывести все данные, которые мне нужны, в нужном мне формате.

-1
задан 10 February 2016 в 08:22
1 ответ

Оказывается, я могу использовать параметр -o как более изощренный способ получить желаемый результат. Не идеально, но работает.

ps  -o "\"%p\",\"%r\",\"%U\",\"" -o rss -o "\",\"%C\",\"%c\",\"%a\""
-1
ответ дан 5 December 2019 в 21:00

Теги

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