【问题标题】:How to print out whether the current web page is compressed?如何打印出当前网页是否被压缩?
【发布时间】:2011-11-06 18:08:03
【问题描述】:

我正在使用 .htaccess 文件来压缩我的 .php 、 .css 和 .js 文件。我想要做的是在我的页脚中回显是否启用了 GZIP。

例如,如果服务器未启用回显GZIP,则未启用或启用GZIP回显。

我环顾了整个网络,但找不到执行此操作的 php 脚本。我以为我可以让它与 ini_get() 一起工作,但显然没有成功。

有人可以给我小费吗?

谢谢:)

【问题讨论】:

  • 您在.htaccess 中添加了什么指令来启用它?简而言之,你在检查什么?您可以显示 PHP 的内部 ob_gzhandler 是否启用了 ini_get(),但如果您使用 Apache 模块进行压缩,这可能会更加困难,如果可能的话...

标签: php gzip


【解决方案1】:

我无法理解您的问题。如果您想了解您的服务器和 php 配置的 gzip 编码是否有效,您需要使用一个向相关 URL 发送请求的附加程序进行检查,并检查是否使用了 gzip。一个这样的工具是命令行上的curl

$ curl --compress --raw -i URL

例子:

  $ curl --compress -I https://stackoverflow.com/questions/8029168/show-is-my-gzip-enabled-on-my-webpage

  HTTP/1.1 200 OK
  Cache-Control: public, max-age=18
  Content-Length: 8683
  Content-Type: text/html; charset=utf-8
*****************************
* Content-Encoding: deflate *
*****************************
  Expires: Sun, 06 Nov 2011 18:21:05 GMT
  Last-Modified: Sun, 06 Nov 2011 18:20:05 GMT
  Vary: *
  Date: Sun, 06 Nov 2011 18:20:46 GMT

查看我突出显示的行:

Content-Encoding: deflate 

它表示 gzip 处于活动状态。请参阅RFC2616 - HTTP/1.1 14.11 Content-Encoding 了解该行的完整含义。

更多信息请参见相关问题/答案:PHP Output buffering, Content Encoding Error caused by ob_gzhandler?

如果这不是您的问题,那么 Gzip a website with inline PHP code 可能会有所帮助。

【讨论】:

  • 嘿,这是个好主意......虽然检查的结果可能应该被缓存,因为你不想为每个页面加载请求一个“远程”文件 - 显然,不要请求“你自己”(相同的脚本),否则你将陷入无限循环......
  • 该 curl 命令需要在 shell 中手动运行,而不是自动运行。在 PHP 中运行它是没有意义的。
  • 我已经按照你的 curl 方法解决了,非常感谢! :)
猜你喜欢
  • 2017-08-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多