我正在尝试通过 mod_rewrite 将 LESS 文件传递给 PHP 编译器 - 当请求 LESS 文件时,该文件应重定向到 PHP 脚本,传递它的路径/名称,以便可以吐出 CSS 文件。
HTML:
<link rel="stylesheet/less" type="text/css" href="styles/main.less" />
<link rel="stylesheet" type="text/css" href="styles/main.less.css" />
.ht 访问:
RewriteEngine On
RewriteBase /v2/
RewriteRule ^([^.]*\.less)$ compilers/lessphp.php?file=$1 [R,L,NC]
一开始,只有一个 .less 文件。
刷新 'http://mydomain.com/v2/' 将导致无样式的内容。/styles/ 中没有创建 .css 文件。
如果我去 'http://mydomain.com/v2/styles/main.less' 我将被重定向到我的 PHP 编译器 'http://mydomain.com/v2/compilers/lessphp.php?file=styles /main.less' 和 'main.less.css' 是在 /styles/ 中创建的。回到“http://mydomain.com/v2/”,我现在已经设置了样式内容。
重写只发生在浏览器的 URL 栏中,而不是站点的页面。
我究竟做错了什么?
编辑:还有更好的方法来做我想做的事情吗?
编辑2:
/v2/
--index.php
--.htaccess
--/样式/
----main.less
----main.less.css
--/编译器/
----lessphp.php