最近在看nginx,但是不太清楚alias的用途具体有什么用?root和rewrite都可以实现它,为什么还要使用alias呢?
root /data/mydomain/main/web/;
location ~* ^/app(|/)$ {
#alias /data/mydomain/main/public/app/;
rewrite ^/app(|/)$ /public/app/ last;
expires 30s;
}
上面的配置中,rewrite生效了达到我的预期。但是alias这个就出现了问题。
PHP中文网2017-05-16 17:17:38
这是你自己的理解问题,首先rewrite和root以及alias根本不沾边。
rewrite是针对http请求的,他里面的路径是网址里面的地址,是地址间的转换。
而root和alias是系统文件路径的设置。
区中root用来设置根目录,而alias用来重置当前文件的目录。
location /img/ {
alias /var/www/image/;
}
#若按照上述配置的话,则访问/img/目录里面的文件时,ningx会自动去/var/www/image/目录找文件
location /img/ {
root /var/www/image;
}
#若按照这种配置的话,则访问/img/目录下的文件时,nginx会去/var/www/image/img/目录下找文件。]