15053971836 注册 / 登录

apache开启压缩

时间: 阅读:486
apache开启压缩

最佳回答

临沂网站建设

临沂网站建设

2023-01-12 23:48:15

第一需要有压缩模块,默认yum安装的话都自带了,如果是源码编译的apache,在编译的时候需要加上压缩模块--enable-deflate=share,其次配置apache的配置文件,添加
AddOutputFilterByType DEFLATE text/html text/php text/png text/jpg text/plain text/css text/xml text/javascript

最新回答共有5条回答

  • 匿名用户
    回复
    2023-01-13 02:02:28

    这种方式建议使用对象存储,对象特别适合这种纯静态网站访问,同时图片部分也可以直接使用CDN进行加速。

    我们以阿里云为例,你需要付出的成本大约为:

    静态网站成本 = 对象存储空间成本 + 访问流量成本(下行流量)

    当然如果需要CDN也可以直接在对象存储中使用。

    对象存储空间成本

    根据标准存储包的价格,40GB包一年的价格大约为9元钱。


    访问流量成本

    我们按照一年100GB的下行流量包计算,每年的的成本为441元。按照问题中28KB计算,总共可以访问374万次左右。

    按照这种计算方式,总成本大约在450元左右,比部署云主机除了省钱外,还省去你的运维成本。

    云开发方式静态托管

    我之前在我的个人博客里写过我如何使用腾讯云开发托管我的个人博客,这种方式也推荐使用。如果是纯静态托管,每月免费的容量为1GB,流量为5GB,这么算下来,每个月的可以支持18万次的访问,如果够用的话,完全可以免费了。

  • 匿名用户
    回复
    2023-01-13 02:02:28

    事实胜于雄辩

    根据你的问题描述不难发现2个问题,

    1,样式文件放在了腾讯云COS?

    2,服务器却选择了阿里云的低配ecs?

    原因:动静分离你的cdn加速不是用的阿里的那就说明没有阿里的块,对于外网服务器来说,一次ip你却进行了俩次转换,包括一些跨域其他问题,服务器最低配置是有 1C/0.5G的ECS,那么对于这个服务器来说本身cpu处理就不行,最多用于学习和测试。就好比一个外网映射工具而已。

    带宽很小。


    下面我们实践来操作一下运用测试工具测试一下我自己1核2g 5M带宽的服务器,我还买了阿里的cdn+域名映射,资源动静分离了。目前项目基本秒开页面。很快啊!

    下面开了3000个线程请求了一个html页面,



    看下面参数详解

    1M等于128kb 带宽传输。线程响应根据接口返回执行秒数来计算 那么就是3000/7 约等于430 那么就是一秒有430个线程在访问。而不是一秒就能请求3000

  • 游客
    回复
    2023-01-13 02:02:28

    3000人同时访问一个纯静态文件,静态文件大小28K,那瞬间请求流量最大理论值为:3000x28K≈82M 。但是此值仅仅是理论上的瞬间最大流量,因为你的站点不可能每时每秒都保持在3000人访问,而是一段时间内的访问人数。如果真是每秒都至少是3000人访问,那你的服务器上行带宽至少得在 82x8 = 656M(之所以乘以8,是因为我们说的速率和运营商说的速率不是一个概念,换算单位不同),这样看来费用是相当的高。

    但实际情况下并不能这样计算,实际请求带宽要远远低于656M,原因主要有以下几点:

    用户流量是分散的,并不是每秒都有3000人访问;

    浏览器对于静态页是有缓存的,所以这3000人中有一部分用户发出请求后,其实是直接从本地缓存中加载的,而没有请求远程服务器。

    要知道,服务器的上行带宽是很贵的,按上面计算方法,就算打个折,你的服务器固定带宽100M的话,那光带宽费用一个月就要近7000元。

    所以一般中小型网站的服务器上行带宽100M都算很大了,鉴于你的访客量不固定,我给你的建议是:

    前端走CDN缓存,如果静态文件长期不更新,可以把缓存时间设得很长,如一个月;

    后端ECS选择低配即可,带宽不要选固定带宽(选择按使用流量来计费,带宽选择5M足够了)。

    这种配置下,别说3000人同时访问了,更高的并发都能抗得住。因为CDN本身就充当了负载均衡的角度,而且CDN节点遍布全国,使得用户“就近读取”静态资源。

    以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,欢迎关注我了解更多科技知识!

  • 夜半唱歌
    回复
    2023-01-13 01:01:18

    打开Apache配置文件httpd.conf,然后添加如下三行内容
    AddOutputFilterByType DEFLATE text/html text/php text/png text/jpg text/plain text/css text/xml text/javascript
    DeflateCompressionLevel 9
    SetOutputFilter DEFLATE
    然后重启apache服务