server {
listen 80;
server_name 域名已隐藏;
index index.html index.htm index.php;
root /home/wwwroot;
# 这一段有什么问题吗 怎么不起作用
location /app/ {
if ($http_user_agent ~* "MicroMessenger") {
set $notweixin 1;
}
if ($notweixin) {
return 404;
}
}
location ~ .*\.(php|php5)?$ {
fastcgi_pass unix:/dev/shm/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
expires 30d;
}
location ~ .*\.(js|css)?$ {
expires 7d;
}
}
Isn’t it possible to return 404 directly in if ($http_user_agent)?
Regular matching has higher priority than path matching, that is to say, if your url path suffix is php, it will not be matched
location ^~ /app/
What about this?