내 서버(Fedora 21 x64)에 nginx를 컴파일하고 설치했습니다.
만료 날짜와 정적 콘텐츠에 대한 추가 헤더를 추가했습니다. 그러나 문제는 nginx가 루트 및 하위 디렉터리에 만료 및 추가 헤더를 추가하지 않는다는 것입니다.
그것을 명확하게 설명하겠습니다.
mydomain.com/anything.html <-- 만료 + 추가 헤더가 추가되었습니다.
mydomain.com/index.html --> (리디렉션) mydomain.com/ <-- 헤더가 없고 만료되지 않습니다.
mydomain.com/projects/index.html --> (리디렉션) mydomain.com/projects/ <-- 헤더가 없고 만료되지 않습니다.
/index.html을 상위 하위 디렉터리로 리디렉션하도록 서버를 구성했습니다.
구성 부분은 다음과 같습니다.
if ($request_uri ~ ^(.*/)index\.html($|\?.*)?) {
return 301 $1$2;
}
location ~* \.html$ {
expires max;
add_header "x-ua-compatible" "ie=edge";
add_header x-frame-options deny;
add_header x-content-type-options nosniff;
add_header x-xss-protection "1; mode=block";
add_header "cache-control" "no-transform";
access_log logs/static.log;
}
답변1
괜찮아요. 물건을 다시 주문하는 문제였습니다.
작업 구성은 다음과 같습니다.
location ~* \.html$ {
add_header "x-ua-compatible" "ie=edge";
add_header x-frame-options deny;
add_header x-content-type-options nosniff;
add_header x-xss-protection "1; mode=block";
add_header "cache-control" "no-transform";
expires max;
gzip_static always;
access_log logs/static.log;
}
location ~* \.(?:html|css|js|txt|xml)$ {
gzip_static always;
}