.htaccess - 中间带有通配符文件夹的文件路径的mod_rewrite条件?

时间:2013-07-27 16:34:20

标签: .htaccess mod-rewrite

我基本上希望能够浏览某个文件夹中的文件夹并查找匹配项。我认为一个例子是最简单的解释方法:

我希望能够通过 domain.com/css/style.css

访问文件

甚至 domain.com/[modulename]/css/style.css(这可能有助于让事情更有条理,现在我想起来了)

但该文件位于/application/modules/[modulename]/public/css/style.css,并且[modulename]每次都可能不同。

我有RewriteCond %{DOCUMENT_ROOT}/application/modules/$1 -f但除非我使用网址/[modulename]/public/css/style.css,否则无法使用 - 我怎样才能让它在路径中间查找通配符?

修改:第二个想法,它必须是domain.com[modulename]/css/style.css,因为整个网站中可能有多个style.css

1 个答案:

答案 0 :(得分:1)

今天工作了五个小时后,我开始工作了:

RewriteCond %{REQUEST_URI} !^/application/modules/
RewriteRule ^([a-zA-Z0-9\-]+)/(.*)$ /application/modules/$1/public/$2
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ %{DOCUMENT_ROOT}%{REQUEST_FILENAME} [NC,L]