1. 配置nginx gzip压缩功能
    服务器对发出的内容进行压缩,带宽少了,体验好,速度快,但是服务端压,会使cpu使用高,压缩比高的进行压缩:文本、程序文件、数据文件。图片视频不要压缩,一般不会减少,而且占比cpu大。
  
    gzip on :压缩配置
   
   gzip_min_length  1k
   gzip_buffers     4   16k
  
   gzip_comp_level 2   压缩比例,用来指定GZIP压缩比,1 压缩比最小,处理速度最快;9 压缩比最大,传输速度快,但处理最慢,也比较消耗cpu
 
   gzip_types  text/plain  text/css   application/xml:对什么内容进行压缩
   gzip_vary on   : 如果前端是缓存,希望缓存把结果发给客户,就要打开,不解压,客户进行解压。
    以上参数在主配置文件中发到http标识,就所有都生效。
   对于nginx的模块可以在./configure中查看,默认情况下大部分都装了,但是我们不用,所以有时需要反向关闭。
   对于apache的压缩优化配置,可以参数网上的答案!
 
2.配置nginx  expires 缓存功能
在服务端配置expires,告诉客户端缓存保持多久。
优点:
1.第一次以后 访问网站快
2.节省服务带宽
3.服务器压力降低
坏处:
1.网站如果改版,对应的用户看到的还是旧的
解决;
1) 过期的时间短一些
2)资源文件更新时,改名(缓存文件改名)
在配置文件中server中,如下:
location ~.*(gif|bmp|swf)$
{
 expires   3650d
}
location ~.*\.(js|css)?$
{
 expires  30d
}
延申:有关爬虫禁止的配置:
robots协议:爬虫协议。可以硬爬,但是行业标准是robots,打官司有可能用到的很重要的文件。
  上面只是一个协议,如果要防止爬虫:可以百度nginx防爬虫处理;也是在server中配置,如图:
 

3.nginx日志相关优化与安全

nginx 没有类似apache的cronolog日志分割处理的功能,但是,可以通过nginxNginx的信号控制功能或者reload重新加载,然后利用脚本来实现日志的自动切割。

4.不记录不需要的访问日志

   对于健康检查或某些图片的日志,一般不需要记录,因为在统计PV时是按照页面计算,而且日志写入频繁消耗IP,降低服务性能。
   在nginx的虚拟主机中进行配置,就可以生效具体配置,可以百度。类似的文件等都可以进行控制访问。
 
  
5.apache和nginx站点目录最小化安全设置:
  1)所有站点目录的用户和组应该是root
  2)所有目录权限默认是755
  3)所有文件权限是默认的644
 
6.http状态码:
403 是权限问题
500  一般是配置错误
502  坏的网关,一般是网关服务器请求后端服务器,后端直接挂了
503  服务当前不可用,可能是超载或者维护导致
504  坏的网关,一般是网关服务器请求后端服务器,后端超时没有返回结果导致
 
7.tmpfs是一种基于内存的文件系统,使用tmpfs达到加快速度的目的,IO很高而且是临时的目录,就可以用,需要用内存来撑住
mount -t tmpfs -o size=16m  tmpfs  /tmp

四十三、LAMP与LNMP web架构深度优化实战-第二部的更多相关文章

  1. 四十二、LAMP与LNMP web架构深度优化实战-第一部

    1.nginx.conf配置文件基本参数优化 1.1 隐藏nginx header内版本号信息 一些特定的系统及服务漏洞一般都和特定的软件版本号有关,我们应尽量隐藏服务器的敏感信息(软件名称及版本等信 ...

  2. WEB架构深度优化之PHP

    一.PHP引擎缓存加速优化(4种) 1.eAccelerator 2.XCache 3.APC 4.Zend 二.使用tmpfs作为缓存加速缓存的目录(可用rc.local或fstab来自动挂载) m ...

  3. LNMP WEB架构构建

    LNMP WEB架构处理请求过程 1.Nginx为一款高性能Web服务器,本身是不能处理PHP的,当接收到客户端浏览器发送HTTP Request请求时,Nginx服务器响应并处理web请求,静态资源 ...

  4. 四十、LAMP与LNMP加速与缓存优化进阶实战上部

    实例: 一. 所有服务器配置定时时间同步,必须通过web server上网. 有两种方式: 1.服务器A能进行上网,作为web server ,通过指定为ntp服务器,所有服务器访问这个服务器 2.服 ...

  5. 撩课-Web架构师养成系列(第二篇)-async

    前言 Web架构师养成系列共15篇,每周更新一篇,主要分享.探讨目前大前端领域(前端.后端.移动端)企业中正在用的各种成熟的.新的技术.部分文章也会分析一些框架的底层实现,让我们做到知其然知其所以然. ...

  6. 四十一、LAMP与LNMP加速与缓存优化进阶实战下部

    一.配置,在nginx和apache所在的服务器中: 1.配置:cd /application/php/lib/php.ini 1)extension_dir="/application/p ...

  7. 四十三:漏洞发现-WEB应用之漏洞探针类型利用修复

    已知CMS 如常见的dedecms,discuz,wordpress等源码结构,这种一般采用非框架开发,但是也有少部分采用框架类开发,针对此类源码程序的安全监测, 我们要利用公开的漏洞进行测试,如不存 ...

  8. LAMP与LNMP架构的区别及其具体的选择说明

    LAMP==Linux+Apache+Mysql+PHP LNMP==Linux+Nginx+Mysql+PHP 以上两只架构是目前网站的主流架构 LAMP和LNMP最主要的区别在于: 一个使用的是A ...

  9. 可扩展Web架构与分布式系统(转)

    1.1. web分布式系统的设计原则 搭建和运营一个可伸缩的web站点或者应用程序意味着什么?在原始层面上这仅仅是用户通过互联网连接到远程资源-使系统变得可伸缩的部分是将资源.或者访问的资源,分布于多 ...

随机推荐

  1. 使用node.js安装asar和反编译app.asar

    背景:app.asar文件是Electron加密打包时的中间产物,electron.exe调用resources文件夹下的app.asar从而实现不用解压缩而直接读取文件内容的高效. 一.需要先安装n ...

  2. 18 ~ express ~ 前台分类导航展示 与 排序

    一,前台分类导航展示 1,后台文件:  /router/main.js router.get('/',(req,res,next)=>{ /** * 从数据库中读取分类信息 * rs是一个数组类 ...

  3. bzoj 2306

    %%%%http://blog.csdn.net/popoqqq/article/details/43926365 #include<bits/stdc++.h> #define INF ...

  4. 2.11 DataBinding 简单使用

    DataBindIng 在我理解看来类似于其他语言当中的全局变量,只修改一处就可全部修改 添加位置和代码如下: 打开DataBinding 开关: dataBinding { enabled true ...

  5. 用Maven整合SSM项目实例

     转自https://www.cnblogs.com/hujianblogs/p/8526737.html 本人在学习Maven之余,为了深入了解Maven的用法,决定创建一个SSM整合实例.项目是自 ...

  6. MySQL笔记 02

    SQL对表中数据的CRUD操作: 插入数据: insert into 表名 (列名1,列名2,....) values (值1,值2,....): 插入部分: insert into xuesheng ...

  7. CSS绘制小三角

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Java基础查漏补缺(1)

    Java基础查漏补缺 String str2 = "hello"; String str3 = "hello"; System.out.println(str3 ...

  9. VUE v-if与v-show

    v-if 本质:vue-if是动态的向DOM树内添加或者删除DOM元素 优点:更加灵活 <li v-for="(item, index) in scene" v-if=&qu ...

  10. Linux-课后练习(第二章命令)20200217-1