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

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
原文地址:https://www.cnblogs.com/dangjingwei/p/11747218.html