当前位置: 首页 > news >正文

nginx前端配置(新)

基础配置 

server {listen 80;server_name your-frontend-domain.com;# 根目录为前端网页文件所在目录root /path/to/your/frontend/files;# 默认文档(例如 index.html)index index.html;location / {try_files $uri $uri/ /index.html;   #try_files 指令用于处理前端路由,以便将所有请求重定向到 index.html,这对于单页应用程序(SPA)非常有用}location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {expires 30d;    #配置静态文件的缓存时间add_header Cache-Control "public, max-age=2592000";在响应头中添加 Cache-Control 标头,告诉客户端浏览器可以缓存响应内容,最长时间为2592000秒}# 可以添加其他资源的处理规则,如字体文件等
}

关于add_header还可以添加其它标头

添加安全标头

add_header X-Content-Type-Options "nosniff";
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";

如禁止浏览器嗅探内容类型(X-Content-Type-Options)以及点击劫持保护(X-Frame-Options)等

添加自定义标头

add_header X-My-Custom-Header "Hello, World!";

这会在响应头中添加一个自定义标头 X-My-Custom-Header 并将其值设置为 "Hello, World!"

不同客户端使用不同的项目文件

server {listen 80;server_name your-frontend-domain.com;location / {root /opt/static/pc;if ($http_user_agent ~* '(mobile|android|iphone|ipad|phone)') {   #判断变量中的客户端参数是否是移动端,是的话使用以下静态资源路径root /opt/static/mobile;}index index.html;try_files $uri $uri/ /index.html;   #try_files 指令用于处理前端路由,以便将所有请求重定向到 index.html,这对于单页应用程序(SPA)非常有用}}

 ssl配置与重定向配置

server {listen 80;server_name your-website.com;return 301 https://$server_name$request_uri;
}
server {listen                      443 ssl;server_name                 your-website.com;ssl_certificate             /etc/nginx/ssl/your-website.crt;ssl_certificate_key         /etc/nginx/ssl/your-website.key;ssl_session_timeout         10m;ssl_ciphers                 ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384;ssl_protocols               TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers   on;   #如果启用此选项,Nginx会优先使用服务器端支持的密码套件,而不是客户端提供的首选密码套件。这通常是安全的,因为它强制使用服务器配置中的密码套件,以最大程度地确保安全性。但是,这可能会导致某些老旧客户端无法连接,因为它们的密码套件不被服务器所支持ssl_session_timeout 1d;    #选配,此配置定义了SSL会话超时的时间。在示例中,它设置为1天,这意味着SSL会话将在1天后过期。过期的会话可能需要重新建立,以提高安全性ssl_session_cache shared:SSL:10m;   #选配,这个配置定义了用于存储SSL会话信息的缓存大小和存储位置。在示例中,它使用了共享内存缓存(shared memory cache)来存储SSL会话。这有助于加快SSL握手的速度,因为会话数据可以在客户端和服务器之间重用ssl_session_tickets off;   #选配,这个配置用于控制是否启用SSL会话票据(session tickets)。在示例中,它被设置为 off,表示禁用SSL会话票据。启用会话票据允许客户端和服务器之间的会话信息跨多个SSL连接重用,以提高性能add_header Strict-Transport-Security "max-age=31536000; includeSubdomains" always;  #选配,使用HTTP Strict Transport Security 头增加了安全性,强制客户端在一年内使用HTTPS与您的网站通信location / {root                    /project/xxx;index                   index.html index.htm index.md;try_files               $uri $uri/ /index.html;}
}

静态文件压缩


server {# 开启gzip 压缩gzip on;# 设置gzip所需的http协议最低版本 (HTTP/1.1, HTTP/1.0)gzip_http_version 1.1;# 设置压缩级别,压缩级别越高压缩时间越长  (1-9)gzip_comp_level 4;# 设置压缩的最小字节数, 页面Content-Length获取gzip_min_length 1000;# 设置压缩文件的类型  (text/html)gzip_types text/plain application/javascript text/css;
}

http://www.lryc.cn/news/196022.html

相关文章:

  • js,jquery,vue设置html标签隐藏不显示
  • 口袋参谋:如何实时监控对手数据?
  • Q-learning如何与ABC等一些元启发式算法能够结合在一起?
  • mysql 过滤多列重复的值(保留其中一条),对单列或者多列重复的值去重
  • 面向红队的自动化引擎工具
  • Python库学习(十):Matplotlib绘画库
  • coverity工具 代码审计
  • 女鹅冬天的第一件羽绒服,当然要时尚经典的
  • 智慧渔业方案:AI渔政视频智能监管平台助力水域禁渔执法
  • LXC、Docker、 Kubernetes 容器以及Hypervisor的区别
  • 电子杂志制作不求人:简单易用的工具推荐
  • Excel冻结窗格
  • Flink自定义sink并支持insert overwrite 功能
  • CSS Vue/RN 背景使用opacity,文字在背景上显示
  • vue3自定义指令批量注册
  • 山西电力市场日前价格预测【2023-10-18】
  • 2-k8s-控制器介绍
  • 【数据结构】二叉树--OJ练习题
  • 时间复杂度为 O(n^2) 的排序算法
  • ES6 Map数据结构
  • 网页数据采集HTTP Get,Post登录提交数据--VBS之Microsoft.XMLHTTP对象
  • 强化科技创新“辐射力”,中国移动的数智化大棋局
  • 喜报 | 擎创科技实力亮相2023科创会并荣获科技创新奖
  • vue3学习(九)--- keep-alive缓存组件
  • 用servlet实现一个简单的猜数字游戏。
  • 前端取消请求
  • 关于6轴球腕机械臂的肩部奇异描述纠正
  • Python —— hou.Node class
  • MATLAB——RBF、GRNN和PNN神经网络案例参考程序
  • E138: Can‘t write viminfo file