php ---- deflate和.htaccess

时间:2011-01-07 08:47:30

标签: php apache

这些代码是什么意思?它来自.htaccess文件。

<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
 </IfModule>

RewriteEngine on
RewriteRule ^([^./]{3}[^.]*)$ /index.php?page=$1 [QSA,L]

有人可以解释最后一行吗?谢谢

4 个答案:

答案 0 :(得分:1)

此:

<IfModule mod_deflate.c>
  SetOutputFilter DEFLATE
   </IfModule>

表示:发送到客户端的输出将被压缩。 见http://httpd.apache.org/docs/2.0/mod/mod_deflate.html

答案 1 :(得分:1)

  

mod_deflate模块提供DEFLATE输出过滤器,允许服务器的输出在通过网络发送到客户端之前进行压缩。

http://httpd.apache.org/docs/2.2/mod/mod_deflate.html

基本上它压缩apache发送的数据然后被浏览器解压缩,减少服务器和浏览器之间发送的有效负载

答案 2 :(得分:1)

我想你想知道重写规则吗?

^启动expressoin

^.任何角色

/然后斜杠

{3}表示匹配之前的项目3次

^.表示匹配任何字符

*表示匹配前面表达式中的零个或多个

$结束表达式

QSA追加传递给结尾的变量 L表示最后一条规则

匹配任何字符然后斜杠(三次),然后匹配任何字符......

所以

/a/b/c/myfile.txt

将重写为

/index.php?page=/a/b/c/myfile.txt

和(例如从登录表单发布)

/a/b/c/myfile.php?username=myname&password=mypassword

将被重写为

/index.php?page=/a/b/c/myfile.txt&username=myname&password=mypassword

答案 3 :(得分:0)

TheSetOutputFilter DEFLATE会压缩从网络服务器发送的流量,以缩短响应时间并加快网站速度。

重写规则使用正则表达式来匹配URL中的特定模式,并对其进行修改以便发生其他事情。

  RewriteRule ^([^./]{3}[^.]*)$ /index.php?page=$1 [QSA,L] //expect someone can explain

以下是有关网址重写的资源: http://httpd.apache.org/docs/2.0/misc/rewriteguide.html