0

在我的 TYPO3 4.5.5、4.6.8、4.7.0 安装中,我启用了 BE 压缩,并将文件类型 css.gzip 和 js.gzip 添加到 gzip 编码中,但它似乎只在我使用 Linux 时才有效加载后端。当我从 Windows 框中加载后端时,后端 css 不断消失,就像这个问题一样:Typo3 backend css 不断消失?. 我已经安装了 lighttpd 和 xdebug。我该如何追踪这个问题?我能做些什么更好?当我加载 BE 时,css 消失了,我看到白色背景和所有链接,或者 css 消失了,我只看到灰色背景?Opera、Firefox、Chrome 和 IE 都会发生这种情况,但仅限于 Windows。它在我的带有 Opera 的 vmware Linux 中运行良好。

这是我在 Windows 中收到的 html 文档的开头:

     <link rel="stylesheet" type="text/css" href="../typo3temp/compressor/ext-all-notheme-448c172dae3b05a28e37e929acd3dfbd.css.gzip?1338165817" media="all">
     <link rel="stylesheet" type="text/css" href="../typo3temp/compressor/xtheme-t3skin-b1eb282b32815f23ab802d5f31be8d32.css.gzip?1338165817" media="all">
     <link rel="stylesheet" type="text/css" href="../typo3temp/compressor/merged-13c77c78c44baff349c74df3ad74c358-2f57f69c13098471b93b4fa184d2bf2c.css.gzip?1338198129" media="all">
     <link rel="stylesheet" type="text/css" href="../typo3temp/compressor/opendocs-452c8b724f6c5a4422f90810531ca5a5.css.gzip?1338166068" media="all">  

     <script src="../typo3temp/compressor/prototype-8eb6a2a9407e9463f08359cc9bad4c87.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/effects-7755a9120837eb7b8dff7c8dd2348199.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/builder-4fb5884be8295df97135419557d212dd.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/effects-7755a9120837eb7b8dff7c8dd2348199.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/dragdrop-57bf1a5e32454608dbccbef2d2662a48.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/controls-722f428342d0f41d9510f8acd197ea7f.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/scriptaculous-8f7107540a1c9b395c16bfcafedf2cd2.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/ext-base-c203c25c05d8ccea2297e64c157fc2be.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/ext-all-97d26ae0274f2fc5953506492a4c41d4.js.gzip" type="text/javascript"></script>
     <script src="../typo3temp/compressor/ext-lang-de-6eab6fa8f67816fcbfac59dc46c48f64.js.gzip" type="text/javascript" charset="utf-8"></script> 

这是我的 lighttpd 规则:

 $HTTP["url"] =~ "\.js\.gzip$" {
    setenv.add-response-header = ("Content-Encoding" => "x-gzip")
    mimetype.assign = ( "js.gzip" => ".gzip" )
 }

 $HTTP["url"] =~ "\.css\.gzip$" {
      setenv.add-response-header = ("Content-Encoding" => "x-gzip")
      mimetype.assign = ( "css.gzip" => ".gzip" )
 }

 compress.allowed-encodings = ( "gzip", "deflate")
 compress.cache-dir = "/tmp/lighttpdcompress/"
 compress.filetype  = ( "text/html", "text/plain", "text/css", "text/xml", 
 "application/x-javascript" )

这是我来自 backend.php 的响应标头:

 Cache-Control  max-age=1728000, no-cache, must-revalidate
 Connection         close
 Content-Encoding   gzip
 Content-Type   text/html;charset=utf-8
 Date   Wed, 30 May 2012 12:17:50 GMT
 Expires    Tue, 19 Jun 2012 12:17:49 GMT, 0
 Last-Modified  Wed, 30 May 2012 12:17:49 GMT
 Pragma no-cache
 Server lighttpd/1.4.29
 Transfer-Encoding  chunked
 Vary   Accept-Encoding
 X-Powered-By   PHP/5.3.8

这是我的请求标头:

 Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
 Accept-Encoding    gzip, deflate
 Accept-Language    en-us,en;q=0.5
 Connection keep-alive
 Host   XXXX
 Referer    XXXX
 User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0

这是我在登录屏幕上的帖子:

 challenge  XXXXXX
 commandLI  Login
 interface  backend
 loginRefresh   
 login_status   login
 p_field    
 redirect_url   backend.php
 userident  XXXXX
 username   XXXXX

加载后我只能看到一个空的灰色屏幕,但使用 firebug 我可以看到所有源代码和 css 文件都已加载到我的浏览器中?我的后端真的只适用于 Linux 和 Opera(也许是 Firefox)???

编辑:我用 Firefox 12 和 Windows 7 Ultimate 检查了一个虚拟机,它工作正常???

4

1 回答 1

1

检查您的 HTTP 标头。他们是正确的吗?可能您的 .htaccess 规则无法正常工作。

您可以使用Firefox Plugin Live HTTP Headers跟踪标头。或者您可以使用像webscarab这样的代理来跟踪 HTTP。

于 2012-05-30T09:35:49.650 回答