Псевдоним конфигурации Nginx и корневая проблема

Nginx

Источник проблемы:

Мне нужно использовать nginx при выполнении проекта, настроить nginx не так уж и сложно, но я вообще не могу к нему зайти (404 это все слезы :( ).


server {
...
        location / {
// 就是这里,alias 与 root配置,后面要 /  结尾,而且windows下也要使用 /,否则报错
            alias   D:/xc-nginx/nginx-1.16.1/html/xc-ui-pc-static-portal/;
            index  index.html index.htm;
        }
...

Но в начале исходный файл добавил root, поэтому я хотел изучить разницу между root и псевдонимом

server {
...
        location / {
            root   D:/xc-nginx/nginx-1.16.1/html/xc-ui-pc-static-portal;
            index  index.html index.htm;
        }
...


Исследуйте корень и псевдоним

И root, и псевдоним — это то, как nginx указывает пути к файлам.


[root]
Синтаксис: корневой путь
По умолчанию: корневой html
Раздел конфигурации: http, сервер, местоположение, если

[alias]
Синтаксис: псевдоним пути
Раздел конфигурации: местоположение

Разница в том, как nginx интерпретирует uri за местоположением.
Результат обработки root: корневой путь + путь к местоположению.
Результат обработки псевдонима: заменить путь местоположения на путь псевдонима

корневой экземпляр:

1
2
3
location  /ying/ {
root /www/root/html/;
}

Если URI запроса — /ying/a.html, веб-сервер вернет файл по адресу /www/root/html/ying/a.html на сервере.

пример псевдонима:

1
2
3
location   /ying/ {
alias /www/root/html/new_t/;
}

Если запрошенный URI — /ying/a.html, веб-сервер вернет файл по адресу /www/root/html/new_t/a.html на сервере.


Суммировать

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