Nginx Google fonts 역방향 프 록 시 설정 HTTP 2 / SSL 지원
VPS 환경 은 다음 과 같 습 니 다.
이전에 컴 파일 설치 가 관련 모듈 을 열지 않 았 다 면 다시 컴 파일 해 야 합 니 다. 매개 변 수 는 다음 과 같 습 니 다.
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-openssl=/usr/local/ssl --with-http_v2_module --with-http_sub_module
컴 파일 이 끝나 도 틀 리 지 않 으 면
make && make install
OK.Nginx 반전 설정
기본 설정
upstream google {
server fonts.googleapis.com:80;
}
upstream gstatic {
server fonts.gstatic.com:80;
}
proxy_temp_path /your/path/tmp 1 2;
proxy_cache_path /your/path/cache levels=1:2 keys_zone=cache1:100m inactive=30d max_size=1g;
80 포트 설정
server {
listen 80;
server_name your.proxy.domain;
root /your/path/;
location /css {
sub_filter 'fonts.gstatic.com' 'your.proxy.domain';
sub_filter_once off;
sub_filter_types text/css;
proxy_pass_header Server;
proxy_set_header Host fonts.googleapis.com;
proxy_set_header Accept-Encoding '';
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://google;
proxy_cache cache1;
proxy_cache_key $host$uri$is_args$args;
proxy_cache_valid 200 304 10m;
expires 365d;
}
location / {
proxy_pass_header Server;
proxy_set_header Host fonts.gstatic.com;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://gstatic;
proxy_cache cache1;
proxy_cache_key $host$uri$is_args$args;
proxy_cache_valid 200 304 10m;
expires 365d;
}
}
443 포트 설정
우선 당신 은 무료 HTTPS 인증 서 를 가지 고 있어 야 합 니 다. 이것 은 제 이전 글 을 참고 할 수 있 습 니 다: 무료 Https 인증서 (Let 'S Encrypt) 신청 과 설정
sub_filter
필드 를 설정 할 때 도 메 인 이름 에 https: / 를 추가 해 야 합 니 다. 그렇지 않 으 면 프 록 시 CSS 파일 의 글꼴 파일 참조 가 HTTP 로 요청 되 었 습 니 다 blocked/mixed-content
오류 가 발생 할 수 있 습 니 다.server {
listen 443 ssl http2;
ssl on;
ssl_certificate /etc/letsencrypt/live/your.proxy.domain/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/your.proxy.domain/privkey.pem;
ssl_dhparam /etc/ssl/certs/dhparams.pem;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
server_name your.proxy.domain;
root /var/sites/fonts/;
location /css {
sub_filter 'http://fonts.gstatic.com' 'https://your.proxy.domain';
sub_filter_once off;
sub_filter_types text/css;
proxy_pass_header Server;
proxy_set_header Host fonts.googleapis.com;
proxy_set_header Accept-Encoding '';
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://google;
proxy_cache cache1;
proxy_cache_key $host$uri$is_args$args;
proxy_cache_valid 200 304 10m;
expires 365d;
}
location / {
proxy_pass_header Server;
proxy_set_header Host fonts.gstatic.com;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://gstatic;
proxy_cache cache1;
proxy_cache_key $host$uri$is_args$args;
proxy_cache_valid 200 304 10m;
expires 365d;
}
}
안전 도 난 방지 체인
다른 사람 에 게 공유 하지 않 으 면 설정 에 refer 화이트 리스트 를 추가 하여 판단 해 야 합 니 다. 조건 에 맞지 않 으 면 403 으로 돌아 갑 니 다.
valid_referers server_name *.your.domain.com *.other.domain.com;
if ($invalid_referer) {
return 403;
}
블 로그 원문:https://keelii.github.io/2017/04/22/proxy-google-fonts-with-ssl-http2-support/
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Nginx를 사용하여 도메인을 포트 번호로 리디렉션하고 SSL을 설정하는 방법은 무엇인가요?nano 또는 vim에서 이 파일 열기/etc/nginx/nginx.conf nginx.conf를 업데이트한 후 이 명령을 적용합니다. nginx.conf 테스트sudo nginx -tnginx 서비스 다시 시작su...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.