如果问题标题可能不方便,我提前道歉。我很确定 Ubuntu Server 12.04 不是原因,但我可以解释诀窍在哪里......
我的网站使用带有 LESS 的 Bootstrap 及其客户端编译(我正处于开发周期,所以我想将它保留在客户端上)。在我的本地实例(装有 Ubuntu 12.04 的笔记本电脑)上一切正常,但从我的服务器实例(在 Ubuntu Server 12.04 上运行)请求相同的网站时不会生成样式。
两者都使用相同的 mod 运行 Apache 2.2.22:别名、auth_basic、authn_file、authz_default、authz_groupfile、authz_host、authz_user、autoindex、cgi、deflate、dir、env、headers、mime、negotiation、php5、reqtimeout、rewrite、setenvif、ssl , 地位。
我从我的本地实例(Ubuntu 12.04)得到的效果很好!
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>My website</title>
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<meta content="" name="description">
<meta content="alterphp" name="author">
<link href="/bundles/mywebsite/css/main.less" type="text/css" rel="stylesheet/less">
<link href="/bootstrap/less/responsive-768px-979px.less" type="text/css" rel="stylesheet/less">
<script type="text/javascript" src="/jquery/jquery.js"> ... </script>
<script type="text/javascript" src="/jquery.form.js"> ... </script>
<script type="text/javascript" src="/bundles/mywebsite/js/less-1.3.0.min.js"> ... </script>
<style id="less:bundles-mywebsite-css-main" type="text/css" media="screen"> **Style is well processed** </style>
<style id="less:error-message" type="text/css" media="screen"> ... </script>
</head>
<body>
...
</body>
</html>
使用 FireBug,我可以看到“网络”选项卡中只有两个主要的较少文件显示为已下载。main.less导入更少的文件,这些文件都在 main.less 响应中处理。
我从我的服务器实例(Ubuntu Server 12.04)得到的东西不起作用!
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>My website</title>
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<meta content="" name="description">
<meta content="alterphp" name="author">
<link href="/bundles/mywebsite/css/main.less" type="text/css" rel="stylesheet/less">
<link href="/bootstrap/less/responsive-768px-979px.less" type="text/css" rel="stylesheet/less">
<script type="text/javascript" src="/jquery/jquery.js"> ... </script>
<script type="text/javascript" src="/jquery.form.js"> ... </script>
<script type="text/javascript" src="/bundles/mywebsite/js/less-1.3.0.min.js"> ... </script>
<style id="less:error-message" type="text/css" media="screen"> ... </script>
</head>
<body>
...
</body>
</html>
没有从 main.less 处理任何样式......使用 FireBug,我可以看到从main.less导入的所有 less 文件都显示为在“网络”选项卡中下载。
编辑 1: 我访问了我的页面,并且每个资源一个接一个(每个 LESS 文件都是可访问且完整的)。我在“网络”选项卡中没有错误,只是在我的服务器实例上没有处理 LESS 样式......
我对这个谜有任何建议!