nginx之alias配置---root与alias区别
########
server{
        listen 9002;
        server_name 192.168.119.140;
        client_max_body_size 1024M;
        location / {
                root /home/shiyongbin/html;######项目一
                index index.html;
                try_files $uri $uri/ @router;
        }
        location @router {
                rewrite ^.*$ /index.html last;
        }
     ##############
        location /tangbao/ {
                alias /home/shiyongbin/ceshihtml/;######指向另一个html页面
                index index.html;
        }
        ###################################################
}
nginx的静态文件配置中,root和alias指令都能实现。为了避免混淆,尽量不要写没有根路径的url模式,即避免 static/这样的开头,根路径的斜杠需要保留,没有根路径其实也很奇怪。
root和alias的区别主要在于替换的部分,root模式中,会把root配置的路径替换匹配后的url中的host。alias则把他指定的路径,替换url中匹配的部分。指令中的斜杠对于root指令没有影响,对于alise则按照替换规则匹配即可。
root 指令
location /dir/ root root_path -> http://host/dir/file.txt -> root_path/dir/file.txt
alias 指令
location /dir alias alias_path -> http://host /dir /file.txt -> alias_path/file.txt location /dir/ alias alias_path/ -> http://host /dir/ file.txt -> alias_path/file.txt
了解了root和alise之后,通常最佳实际是配置一个项目的根root,其他的文件夹则使用alias,毕竟alias更加灵活。
                    
                
                
            
        
浙公网安备 33010602011771号