root 指令:
-
root 指令用于指定一个目录,该目录将成为 URI 中指定路径的根目录。
-
当使用 root 时,Nginx 会将 URI 的路径直接附加到 root 指定的目录上,然后尝试查找对应的文件。
-
例如:
location /static {
root /var/www;
}
如果请求 URI 是 /static/file.txt,Nginx 将在文件系统中查找 /var/www/static/file.txt。
alias 指令:
-
alias 指令也用于指定一个目录,但它将 URI 的一部分映射到文件系统中的不同位置。
-
alias 将匹配 URI 中指定的部分,并将其替换为指定的目录。
-
例如:
location /static {
alias /var/www/static_files;
}
如果请求 URI 是 /static/file.txt,Nginx 将在文件系统中查找 /var/www/static_files/file.txt。
总结区别::
- root 用于将整个 URI 路径追加到指定的目录上。
- alias 用于替换 URI 中的部分,并将其映射到指定的目录。
选择使用"root"还是"alias"取决于你的需求和目录结构。通常,alias 更灵活,适用于需要在 URI 中去掉部分路径的情况。