Heim > Artikel > Backend-Entwicklung > nginx über den Unterschied zwischen Root und Alias
Dieser Artikel stellt hauptsächlich den Unterschied zwischen Root und Alias vor. Er hat einen gewissen Referenzwert. Jetzt kann ich ihn mit allen teilen.
Konfiguration Demo:
location xxx { root yyy }
Browserzugriff xxx, der tatsächliche Zugriff ist yyy/xxx
Browserzugriff xxx/abc.html, tatsächlicher Zugriff ist yyy/xxx/abc.html
Browserzugriff xxx/ccc/ abc.html, der tatsächliche Zugriff ist yyy/xxx/ccc/abc.html
Demo konfigurieren:
locaiton xxx { # alias必须以 / 结束,否则无效 alias yyy/ }
Der Browser greift auf xxx zu und der tatsächliche Zugriff ist yyy
Der Browser greift auf xxx/abc.html zu und der tatsächliche Zugriff ist yyy/abc.html
Wenn der Browser greift auf xxx/ccc/abc.html zu, der tatsächliche Zugriff ist yyy/ccc/abc.html
Die Verzeichnisstruktur von Nginx ist wie folgt:
nginx/ -html/ -index.html -logs/ - access.log -conf/ -nginx.conf
1) Diese Konfiguration ist unter http:/ zu sehen. /localhost:8086/access.log Gehen Sie zu nginx/logs/access.log, aber erwarten Sie nicht, dass Sie auf die Dokumente im HTML-Verzeichnis zugreifen können
server { listen 8086; server_name localhost; location / { root logs; } }
2) Mit dieser Konfiguration greifen Sie auf http zu: //localhost:8086/log/access.log, und Sie können nginx/logs/access.log sehen;
Besuchen Sie http://localhost:8086/, Sie können nginx/html/index.html sehen
server { listen 8086; server_name localhost; location / { root html; index index.html index.htm; } # 配置成 location /log/ 或 location /log 都可以 location /log/ { # 不能写成logs, 必须已 / 结束 alias logs/; # 以下配置没用也可以,只是方便你输入 localhost:8086/log/ 后能,看到nginx/logs/目录下的所有文件 autoindex on; } }
3) Besuchen Sie für diese Konfiguration http://localhost:8086/logs/access.log, Sie können nginx/logs/access.log sehen;
Besuchen Sie http://localhost:8086/, Sie kann nginx/html/index.html sehen
server { listen 8086; server_name localhost; # http://localhost:8086/ 访问的是 # nginx/html/ (然后会自动显示 index.html 或 index.htm,如果存在这两个文件之一) # 啰嗦的注释: nginx/html(html是root的值)/(/是location的值) location / { root html; index index.html index.htm; } # http://localhost:8086/logs/ 访问的是 # nginx/./logs/ # .是root的值,logs是location的值 # 请与第4种错误配置进行比较,深入理解root属性 location /logs/ { # 写成./也可以 root .; } }
4) Falsche Konfiguration
server { listen 8086; server_name localhost; location / { root html; index index.html index.htm; } # 这样子配置是错的, 请与第三种配置比较一下 # 关键点:root属性会把root的值加入到最终路径之前 # 即: http://localhost:8086/logs/access.log访问的是: # nginx/logs/logs/access.log # 因为: nginx/logs(root的值)/logs(locaition的值)/access.log, location /logs/ { root /logs/; } }
Auszug: https://www.cnblogs.com/zhang... Dieser Absatz:
The Der durch das Root-Attribut angegebene Wert soll zum endgültigen Pfad hinzugefügt werden. Der Zugriffsort wird also zum Root-Wert/Standortwert. Und ich möchte den aufgerufenen URI nicht zum Pfad hinzufügen. Daher müssen Sie das Alias-Attribut verwenden, das den URI aufgibt und direkt auf den durch Alias angegebenen Speicherort zugreift. Ich hoffe, dass das Obige dem gesamten Inhalt dieses Artikels dient Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website!
Verwandte Empfehlungen:
Methode 2 zur Verwendung von XHProf zur Analyse von PHP-LeistungsengpässenAnalyse des Fassadendarstellungssystems von LaravelDas obige ist der detaillierte Inhalt vonnginx über den Unterschied zwischen Root und Alias. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!