Ниже приводится содержимое моего файла mydomain.conf для nginx.
server {
server_name www.mywebsite.com;
#the below works
add_header "this" "works";
root /var/www/yii2app/web;
index index.php;
charset utf-8;
access_log off;
error_log off;
location ~* \.(txt|js|json|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar|svg)$ {
try_files $uri =404;
}
location /img {
add_header Cache-Control "public, no-transform";
add_header "hello" "word";
expires max;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/yii2app/web/$fastcgi_script_name;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
}
}
Я пытался настроить управление кэшем, когда понял, что мои блоки местоположения не читаются или не учитываются nginx.
Я проверил это, поместив некоторые дополнительные значения ключа заголовка, такие как:
add_header "this" "works";
и
add_header "hello" "word";
Я вижу, что "это" "работает",когда я тестирую, используя curl, но не "hello", "world", который находится в блоке местоположения / img ...
curl -I http://www.mywebsite.com/img/test.gif
Что я делаю не так?Вышеуказанный конфиг является точным конфигом, который у меня есть на данный момент, кроме адреса веб-сайта и корневого пути.Я закомментировал все остальные строки конфигурации.