我想要匹配所以非 php 文件 现在这样写可以用但终究不严谨
# 重定向至移动端 php 不重定向
location ~* \.(html|txt|css|js|xml|png|jpg|jpeg)$ {
if ($http_user_agent ~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry)) {
rewrite ^(.*) http://m.xxxx.com$1 permanent;
}
}
因为前端分别是两套,api 接口只有一套在主域名上;所以对 php 文件请求的时候不需要重定向
1
xiri 2020-07-27 20:10:25 +08:00
我觉得你这个需求就不对,不应该是写一个匹配 php 文件的 location,然后剩下的都是非 php 文件吗?
|
2
xiri 2020-07-27 20:13:50 +08:00
location / {
...... } location ~ \.php(.*)$ { ...... } |
4
lysS OP 查了下,这样写貌似没问题
# 重定向至移动端 php 不重定向 set $foo 0; if ( $request_uri !~* (.php) ) { set $foo "${foo}1"; } if ( $http_user_agent ~* (mobile|nokia|iphone|ipad|android|samsung|htc|blackberry) ) { set $foo "${foo}1"; } if ($foo ~* "11") { rewrite ^(.*) http://m.xxxx.com$1 permanent; } |