我正在尝试使用Lighttpd进行网址重写。我有我需要的部分工作。现在我有这个: http://domain.com/name/a/123重写为http://domain.com/name/a.php?pid=123
我使用这一重写一次规则执行此操作:“^ / name / a /([^ /] +)”=> “/name/a.php?pid=$1”
该php页面具有未被重写的外部资源,例如JavaScript和CSS文件。有没有办法我也可以重写做以下事情?
http://domain.com/name/a/js/file.js => http://domain.com/name/js/file.js
答案 0 :(得分:0)
如下所示的重写规则应该可以胜任。在perl语法中,假设$ str包含http://domain.com/name/a/js/file.js
$str =~ s/\/a\//\//
从为部分工作的正则表达式提供的正则表达式语法推断,在Lighthttpd中这应该映射到
"/a/"=>"/"
这样做,查找“/ a /”并用“/”替换它。将此应用于您的示例(http://domain.com/name/a/js/file.js)会产生http://domain.com/name/js/file.js