栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

nginx静态资源

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

nginx静态资源

1.静态资源类型

类型种类
浏览器端渲染HTML,CSS,JS        
图片GPEG,GIF,PNG
视频

FLV          MP4

文件TXT         任意下载文件

2.静态资源优化语法(当服务器出现错误时候开始优化)

sndfile        no|off文件高效读取
nopush        no|off提高网络传输效率
tcp_nodelay        no|off在keepalive连接下,提高网络的实时性
gizp        no|off

客户机与服务器传输过程中,都把包压缩完成再进行发送一起搭配这几个进行使用

gizp_comp_level  9; ##压缩比例有1-9这几个级别

gzip_types text/plain application/x-javascript text/css application/xml image/jpg; ##压缩的类型

3.http压缩的实验:

        3.1配置ngixn全局配置:

location  {
        gzip on;
        gzip_comp_level 9;
        gzip_types text/plain application/x-javascript text/css application/xml image/jpg;
        root   html;
        index  index.html index.htm;
        }

重启文件:nginx -s reload

        进行测试curl -i http://192.168.100.*/1.jpg  就会出现包的大小,在html中ls -lh ,对比包是否被压缩了

3.服务器自动进行缓存:exprice 

location / {
            charset utf-8,gbk;  
            #exprice  1d  1d 就是一天   1h 就是1小时   一般应该是7天
            root   html;
            index  index.html index.htm;
        }

4. 静态资源跨域访问:

(1)跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器施加的安全限制。

(2)所谓同源是指,域名,协议,端口均相同。

4.2浏览器为什么禁止跨域?     (1)不安全,容易出现CSRF攻击 #crsf是跨站请求伪造 4.3实现跨域代理的方法
   location / {
          root  html;
          proxy_pass http://192.168.100.202;
          index  index.html   index.htm;
          add_header 'Access-Control-Allow-Origin' '*';
   }
5.防止恶意绑定域名

(1.)恶意绑定是指,别人将自己自己域名绑定到了公司IP

(2.)恶意绑定的解决方法

    server {
        listen       80;
        server_name _;  ##注意,前方有个空格,请不要忘记挖坑···
        return 500;
}

6.静态资源防盗链 6.1什么是盗链?    (1)盗链指的是在自己的界面展示不在自己服务器上的内容,通过技术手段获得他人服务器上的资源地址,绕过别人资源展示页面,在自己页面向用户提供此内容,从而减轻自己服务器的负担,因此真实的空间和流量来自别人的服务器    (2)防盗链设置思路:区别哪些请求是非正常用户请求。 6.2如何配置nginx防盗链?         实验材料:两个图片,两台服务器,和主机的hosts文件         实验要求:两台服务器都安装了nginx,两台都是对外服务,一台是为benet  另一台为accp,但accp是抄袭benet的图片,怎么才能让benet防止图片被盗取?         accp的配置:
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  www.accp.com;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

}


##################index.html

   (1)在benet的nginx.cong中添加location配置文件      
​
  location ~* .(wma|wmv|asf|mp3|mmf|zip|rar|jpg|png|swf|flv|jpeg) {     #表示对这些后缀进行防盗链
            root   html;
            valid_referers none blocked  *.benet.com benet.com;        #允许访问的域名
            if  ($invalid_referer){     #if判断
                    rewrite ^/ http://www.accp.com/2.gif;           #防盗链跳转的页面
            }
        }
​

(2)在benet的hosts文件里添加域名(www.benet.com)和本地地址

[root@localhost ~]# vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.202 www.benet.com

(3) 在本地的C盘下的hosts文件里添加两个域名

192.168.100.202 www.benet.com
192.168.100.203 www.accp.com

开始测试······

最终效果为:只要是benet的网站都可以访问此图片,但accp访问的时候会被benet的if判断调配到其他图片

可能出现的问题:
accp文件指向域名和图片一定要加协议:http://
被指定的图片后缀不可以与location后的协议后缀重合,要不就会被加入防盗链
浏览器最好使用win7,win10的话一定要清理缓存
accp的hosts文件要指向www.benet.com

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/880554.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号