Fre*_*rik 1 javascript php .htaccess gzip
好的,所以我用Google搜索了几页并提出了以下解决方案:
在.htaccess中添加它#Active GZIP for php-files
php_flag zlib.output_compression On
php_value zlib.output_compression_level 5
Run Code Online (Sandbox Code Playgroud)
这适用于.js和.css:
AddHandler application/x-httpd-php .css .js
php_value auto_prepend_file /Library/WebServer/Documents/blog/code/Helpers/ContentHeader.php
Run Code Online (Sandbox Code Playgroud)
这将执行.js以及.css作为php脚本.第二行包括以下页面:
<?php
$pathInfo = pathinfo($_SERVER['PHP_SELF']);
$extension = $pathInfo['extension'];
if($extension == "css")
{
header("Content-type: text/css");
}
if($extension == "js")
{
header("Content-type: text/javascript");
}
?>
Run Code Online (Sandbox Code Playgroud)
这将把标题"text/css"发送到.css文件,将"text/javascript"发送到javascript文件.到现在为止还挺好.然而问题是我使用了几个缩小的javascripts我得到某种php错误:
<br />
<b>Parse error</b>: syntax error, unexpected ']' in <b>/Library/WebServer/Documents/blog/public/scripts/prettify/prettify.js</b> on line <b>18</b><br />
Run Code Online (Sandbox Code Playgroud)
要么:
<br />
<b>Warning</b>: Unexpected character in input: '\' (ASCII=92) state=1 in <b>/Library/WebServer/Documents/blog/public/scripts/showdown.js</b> on line <b>29</b><br />
<br />
<b>Parse error</b>: syntax error, unexpected '?' in <b>/Library/WebServer/Documents/blog/public/scripts/showdown.js</b> on line <b>29</b><br />
Run Code Online (Sandbox Code Playgroud)
那么,有没有更好的方法呢?我能想到的唯一选择是手动进入.javascript文件并"纠正php不喜欢的错误".但它不应该是一个更容易的解决方案吗?