我不确定如何在不重定向.css和.js文件的所有请求的情况下说出这个RewriteRule。
我需要
domain.com/randomfolder /
转到我的域名索引(即.domain.com/index.php),查看所请求的文件夹,但保持网址完好无损。
这似乎很容易,但我似乎无法指定我只希望重定向目录的第一个实例。
例如:
RewriteRule ^(。*)$ index.php
用于重定向,但是当我的index.php调用/css/main.css时,它返回index.php。
有没有办法说 domain.com/subdirectory / 应重定向但 domain.com/subdirectory/file.css 不应该?
我很好,只需要排除/ css /和/ js /目录,但我不知道如何。
答案 0 :(得分:0)
RewriteRule ^([^/]+)/?$ /index.php?folder=$1 [L]
这会将www.example.com/subdirectory/
重定向到www.example.com/index.php?folder=subdirectory
,而不会更改访问者看到的网址。它不会重定向子目录中任何特定文件的请求,也不会重定向子目录中子目录的请求。
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)
答案 1 :(得分:0)
这应该适合你:
<Files ~ "\.(css|js)$">
RewriteRule ^subdirectory(.*)$ index.php
</Files>