Mod rewrite Apache2中的嵌套URL和重写规则

Mod rewrite Apache2中的嵌套URL和重写规则,mod-rewrite,apache2,twiki,Mod Rewrite,Apache2,Twiki,我需要一些关于重写规则和嵌套URL的帮助 我正在为我的网站使用TikiWiki,并且正在为我的项目设置SE友好URL。具体地说,我为www.example.com/projects提供了以下重写规则,以指向一个列出示例中托管的所有项目的页面 这个很好用 现在,我想将www.example.com/projects/project1指向一个特定的项目。 我有重写规则 RewriteRule ^(Projects/Project1)$ tiki-read_article.php?articl

我需要一些关于重写规则和嵌套URL的帮助

我正在为我的网站使用TikiWiki,并且正在为我的项目设置SE友好URL。具体地说,我为www.example.com/projects提供了以下重写规则,以指向一个列出示例中托管的所有项目的页面

这个很好用

现在,我想将www.example.com/projects/project1指向一个特定的项目。 我有重写规则

RewriteRule ^(Projects/Project1)$     tiki-read_article.php?articleId=6
这是可行的,但部分是可行的。内容全部呈现为文本,但主题(图像/css等)都很难处理,页面完全是文本

我知道这是因为主题/css/images中的相对路径都将项目称为基本文件夹,而不是网站的根目录

我不想接触CMS部分-更改文件中的主题/css/图像路径,更多是出于可升级的原因

有人能帮我理解并编写一个规则,使上面的嵌套URL工作吗

问候,,
Radha

您需要更改CMS或为主题/CSS/图像文件编写重写规则。例如,如果您的图像位于站点内的/images/目录中,请重试

RewriteRule ^Projects/(themes/.*)$ \1
或者更好

Alias /Projects/themes /themes

但是,如果是我,我还是会编辑CMS配置。

相对URL在当前文档URL的基础上解析为绝对URL。因此,在您的情况下,基本URL是/projects/project1,而不是/projects,尽管您的文件实际上位于那里。因为客户端只使用URL,对实际的文件系统没有任何线索。当前文档的URL是/projects/project1

因此,使用带有绝对URL路径/projects/css/…的URL引用,而不是相对路径

Alias /Projects/themes /themes