Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess将css重定向到php_Php_Css_.htaccess_Redirect - Fatal编程技术网

.htaccess将css重定向到php

.htaccess将css重定向到php,php,css,.htaccess,redirect,Php,Css,.htaccess,Redirect,我在一个目录中有多个css文件(style0.css、style1.css等)。如何使用htaccess将请求重定向到这些css文件,以便php可以处理请求的css文件。 例如,/styles/style0.css->/includes/compressor.php?i=style0.css RewriteEngine On RewriteRule ^(.*).css$ /includes/compressor.php?i=$1.css [L] 这些.htAccess命令将激活重写引擎。这将允

我在一个目录中有多个css文件(style0.css、style1.css等)。如何使用htaccess将请求重定向到这些css文件,以便php可以处理请求的css文件。 例如,
/styles/style0.css->/includes/compressor.php?i=style0.css

RewriteEngine On
RewriteRule ^(.*).css$ /includes/compressor.php?i=$1.css [L]
这些.htAccess命令将激活重写引擎。这将允许您分析请求URL并在服务器中执行所需的URL。第二行获取以.css结尾的所有URL,并将文件名作为参数插入(如示例中所示)

例如:

将去


L标志将告诉Apache停止处理该请求的重写规则。

用这两行代码向css目录添加.htaccess。现在,您可以将php代码添加到css文件中,并对其进行处理:

AddHandler application/x-httpd-php .css

php_value default_mimetype "text/css"

请你解释一下好吗?[L]的作用是什么?L标志将告诉Apache停止处理该请求的重写规则。如果可能,最好使用重写,因为.css文件应该包含css,而不是PHP。这在语义上是不正确的,而且编辑起来很烦人,因为你的编辑器会尝试将文件解析为CSS,但失败了。我使用它的方式如下:我的CSS是singleSheet.CSS?sheets[]=main.CSS&sheets[]=rest.CSS这允许我有一个工作表,构建服务器端(没有@includes),我认为这也是一个好主意,我可能在将来使用它,所以+1,但因为我只想用php之类的东西压缩css文件,所以我必须将相同的代码复制到所有css文件中,如果我想更改某些内容,我必须编辑所有这些文件。