前書き#
この記事は、個人的に nginx
の実践過程で記録する必要があると考えた設定を記録しています。
https の設定#
server {
# httpsアクセスポートを開く
listen 443 ssl;
# 証明書を参照
ssl_certificate /etc/nginx/cert/xxx.com.pem;
ssl_certificate_key /etc/nginx/cert/xxx.com.key;
}
ページのリフレッシュ 404#
フロントエンドのルーティングがハッシュでない場合、この設定を使用して問題を解決できます。
location / {
try_files $uri $uri/ /index.html;
# SSRのWebルートの場合、例えばnextjsのようなプロジェクトの場合、次のように設定します。
# try_files $uri $uri.html $uri/ =404;
}
spa のサブルートページの 404 設定#
例えば、www.xxx.com/admin のようなサブドメインの場合
location /admin {
try_files $uri $uri/ /admin/index.html;
}
画像リソースの盗難防止#
# 画像リソースの設定
location ~* \.(gif|jpg|png|swf|flv)$ {
valid_referers none blocked www.xxx.com xxx.com;
if ($invalid_referer) {
rewrite ^/ http://www.deepvps.com/retrun.html;
#return 403; 403を返すこともできます
}
}