我需要一些关于重写规则和嵌套URL的帮助。
我正在使用TikiWiki访问我的网站,并且正在为我的项目设置SE友好URL。具体来说,我对www.example.com/projects有以下重写规则,指向列出示例中托管的所有项目的页面。
RewriteRule ^Projects$ articles?type=Project [L]
这很好用。
现在,我想指出www.example.com/projects/project1指向一个特定的项目。 我有这个重写规则
RewriteRule ^(Projects/Project1)$ tiki-read_article.php?articleId=6
这有效,但部分有效。内容全部呈现为文本,但主题 - images / css等都是折腾 - 页面完全是文本。
我理解这种情况会发生'因为主题/ css / images中的相对路径都将Projects作为基本文件夹而不是网站的根目录。
我不想触摸CMS部分 - 更改文件中的主题/ css /图像路径,更多是出于可升级的原因。
有人可以帮助我理解并编写规则,以便上述嵌套URL有效吗?
此致 拉达
答案 0 :(得分:0)
您需要更改CMS或为主题/ CSS /图像文件编写重写规则。例如,如果您的图片位于网站的/images/
目录中,请尝试
RewriteRule ^Projects/(themes/.*)$ \1
或者更好
Alias /Projects/themes /themes
但是,如果是我,我会编辑CMS配置。
答案 1 :(得分:0)
相对URL在基本URL(即当前文档的URL)的基础上解析为绝对URL。因此,在您的情况下,基本网址为/projects/project1
而不是/projects
,尽管您的文件实际位于此处。因为客户端仅使用URL并且不了解实际的文件系统。当前文档的URL为/projects/project1
。
因此,使用带有绝对URL路径(/projects/css/…
)的URL引用而不是相对路径。