NGINX 服务器位置优先级
NGINX server location precedence
我是 NGINX 服务器的新手,我想知道如何修复此位置优先级,因为它不起作用。
我希望服务器查找 /phpmyadmin/ 如果匹配则使用它的根,否则使用第二个位置块。
location ^/phpmyadmin/.*\.(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$ {
root /usr/share/phpmyadmin;
}
location ~* .(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$ {
root /home/safeftp/www/public_html;
expires 30d;
}
非常感谢您的回答。
彼得
您需要在第一个位置块上使用 ~*
(不区分大小写的匹配)语法。此外,最好养成将正则表达式用双引号或单引号引起来的习惯,以防万一您有空格或其他特殊字符。
location ~* "^/phpmyadmin/.*\.(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$" {
root /usr/share/phpmyadmin;
}
location ~* "\.(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$" {
root /home/safeftp/www/public_html;
expires 30d;
}
我是 NGINX 服务器的新手,我想知道如何修复此位置优先级,因为它不起作用。
我希望服务器查找 /phpmyadmin/ 如果匹配则使用它的根,否则使用第二个位置块。
location ^/phpmyadmin/.*\.(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$ { root /usr/share/phpmyadmin; } location ~* .(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$ { root /home/safeftp/www/public_html; expires 30d; }
非常感谢您的回答。 彼得
您需要在第一个位置块上使用 ~*
(不区分大小写的匹配)语法。此外,最好养成将正则表达式用双引号或单引号引起来的习惯,以防万一您有空格或其他特殊字符。
location ~* "^/phpmyadmin/.*\.(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$" {
root /usr/share/phpmyadmin;
}
location ~* "\.(gif|jpg|jpeg|png|ico|wmv|3gp|avi|mpg|mpeg|mp4|flv|mp3|mid|js|css|html|htm|wml)$" {
root /home/safeftp/www/public_html;
expires 30d;
}