0

我不确定如何在不重定向所有对 .css 和 .js 文件的请求的情况下表达此 RewriteRule。

我需要

domain.com/randomfolder/

转到我的域的索引(即 domain.com/index.php)以获取请求的任何文件夹,但保持 url 完整。

这似乎很容易,但我似乎无法指定我只希望重定向目录的第一个实例。

例如:

重写规则 ^(.*)$ index.php

可以重定向,但是当我的 index.php 调用 /css/main.css 时,它会返回 index.php。

有没有办法说domain.com/subdirectory/应该重定向但domain.com/subdirectory/file.css不应该?

我可以排除 /css/ 和 /js/ 目录,但我不知道如何。

4

2 回答 2

0

这应该适合你:

<Files ~ "\.(css|js)$">
    RewriteRule ^subdirectory(.*)$ index.php
</Files>
于 2013-09-19T20:18:58.583 回答
0
RewriteRule ^([^/]+)/?$ /index.php?folder=$1 [L]

这将重定向www.example.com/subdirectory/www.example.com/index.php?folder=subdirectory而不改变访问者看到的 URL。它不会重定向对子目录中任何特定文件的请求,也不会重定向对子目录中子目录的请求。

URL Requested:                Redirect:
--------------------------------------------------------------------
example.com/css               example.com/index.php?folder=css
example.com/css/              example.com/index.php?folder=css
example.com/css/main.css      example.com/css/main.css (no redirect)
example.com/css/js/           example.com/css/js/      (no redirect)
于 2013-09-19T20:16:15.460 回答