如何在 nginx 上为特定 URL 设置 410 永久删除,例如
https://www.example.com/product/somepage.html
或者更好的是我怎样才能为例如特定的前缀做到这一点
https://www.example.com/product/
在这里,我想要 410 所有用于/product/
例如等的 URL /product/page1.html
。/product/page2.html
这是我当前的配置。
server {
listen 80;
listen [::]:80;
server_name example.com;
return 301 https://www.example.com$request_uri;
}
server {
listen 80;
listen [::]:80;
root /var/www/example.com/html;
index portal.php index.php index.html index.htm;
server_name www.example.com;
location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expires 1M;
add_header Cache-Control public;
add_header Pragma public;
}
location ~ ^/\.user\.ini {
deny all;
}
#some more config here
}
使用
return
语句生成所需的状态响应。带有运算符的语句可能是最好的,因为它不能被其他正则表达式位置覆盖
location
。^~
例如: