内部重定向模板主题

时间:2011-02-25 12:50:40

标签: apache mod-rewrite resources themes

我正在尝试在我们的应用中支持主题。

设计师使用常见的html,css,js和图像等资源创建设计。

主题打包为目录,可以在Web浏览器中单独测试,例如:

http://example.com/dir1/dir2/..../dirX/themeZ/index.html

应用程序(和其他控制器文件)的入口点位于不同的URL上,例如:

http://example.com/dir1/dir2/..../dirX/dirY/app.php

现在,app.php知道themeZ / index.html的位置并加载html文件并输出内容。问题是找不到所有“设计”相关文件,如css,js,图像等,因为路径是相对的。

我的解决方案是创建一个.htaccess文件,并有一条规则,说明所有不以'.php'结尾的请求将它们路由到themeZ路径。

我是htaccess重写的初学者。我到目前为止:

RewriteRule \.css$ ../themeZ/style.css
RewriteRule \.js$ ../themeZ/functions.js
RewriteRule \.jpg$ ../themeZ/1.jpg
[etc]

但当然这需要重大更新。它不是很动态,当切换主题时,htaccess文件需要更新 - 不好。此外,资源文件可以位于不同的子文件夹中。

有人可以提供一些指导吗?这是处理应用中主题的最佳方式吗?

1 个答案:

答案 0 :(得分:0)

RewriteRule .*?/(.+?\.(css|js|jpg))$ /dir1/dir2/dirX/themeZ/$1 [NC,last]