要在Nginx中根据文件类型设置过期时间,可以使用`expires`指令。`expires`指令用于设定客户端缓存文件的过期时间。以下是配置Nginx根据文件类型设置过期时间的基本步骤:
1. 找到Nginx的配置文件,在合适的位置块(例如`location`块)中添加以下配置:
```nginx
location / {
...
expires max;
}
```
上述示例中,`expires max`表示设置所有文件的过期时间为最大值,即永不过期。这将使客户端始终从服务器获取最新的文件。
2. 如果您只想为特定的文件类型设置过期时间,可以使用`types`块并指定文件类型。例如:
```nginx
location / {
...
types {
image/jpeg max;
image/png max;
application/javascript 30d;
text/css 7d;
}
}
```
在上述示例中,`image/jpeg`和`image/png`的过期时间设置为`max`,即永不过期。`application/javascript`设置为30天过期,`text/css`设置为7天过期。
3. 保存并关闭Nginx配置文件。
4. 检查Nginx配置文件的语法是否正确。您可以使用以下命令进行检查:
```bash
nginx -t
```
5. 如果配置文件语法正确,重新启动Nginx服务。在大多数Linux发行版中,可以使用以下命令:
```bash
sudo service nginx restart
```
或
```bash
sudo systemctl restart nginx
```
现在,Nginx将根据配置的过期时间来设置相应文件类型的客户端缓存过期时间。
需要注意的是,浏览器以及其他HTTP代理服务器可以选择忽略过期时间并请求最新的文件。此外,如果您对特定文件设置了自定义缓存控制头(例如在应用程序中生成的ETag),则可能会覆盖`expires`指令的效果。