0

我的一个页面上的一些 html 是用 CSS 设置样式的,为了使其具有动态性,CSS 代码必须包含一组特定的 PHP 变量。话虽如此,我编辑了我的.htaccess文件,以便真正的 PHP 文件被欺骗成 CSS 文件。该.htaccess文件如下所示:

RewriteRule ^/css/bars/([^/]*)/([^/]*)/([^/]*)/([^/]*).css$ /css/bars.php?one=$1&two=$2&three=$3&four=$4 [L]

所以,在页面的头部,我有:

<link rel="stylesheet" type="text/css" href="/css/bars/0/0/15/2" />

但是,CSS 文件不会加载。在服务器上找不到该文件。让我相信重写规则是不正确的。有任何想法吗?

4

1 回答 1

0

你可以试试这个:

Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !bars\.php [NC]
RewriteCond %{REQUEST_URI} ^/css/bars/([^/]+)/([^/]+)/([^/]+)/([^/]+)/? [NC]
RewriteRule .* css/bars.php?one=%1&two=%2&three=%3&four=%4 [L]

静默地图

http://example.com/css/bars/0/0/15/2

带或不带斜杠。始终显示在浏览器的地址栏中,

到:

http://example.com/css/bars.php?one=0&two=0&three=15&four=2

字符串css,barsbars.php假定是固定的,而0/0/15/2全部假定为变量且数量为 4。

必须保留传入的 URL 结构以使规则集正常工作:第一个文件夹/css,然后/bars依此类推。

对于永久重定向,替换[L][R=301,L]

希望这是你需要的。

于 2013-02-07T05:49:09.117 回答