mod_rewrite 时找不到静态资源

mod_rewrite 时找不到静态资源

我正在尝试美化 URL,因此我创建了以下 .htaccess 文件:

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

#RewriteRule ^target/([a-zA-Z0-9]+)/$ index.php?target=$1
RewriteRule ^quienes-somos$ index.php?target=about
RewriteRule ^el-equipo$ index.php?target=equipo
RewriteRule ^a-quien-va-dirigido$ index.php?target=dirigido
RewriteRule ^programa-integrativo-para-directivos$ index.php?target=pid
RewriteRule ^modulos-especificos$ index.php?target=modulos
RewriteRule ^espacio-empresa$ index.php?target=empresa
RewriteRule ^espacio-individual$ index.php?target=individual
RewriteRule ^trabajo-bioenergetico$ index.php?target=bionergetico

RewriteRule ^([a-zA-Z0-9]+)$ index.php?target=$1

当请求时一切看起来都很好:

http://inside.amimusa.org/modulos-especificos

但当请求是:

http://inside.amimusa.org/modulos-especificos/

未找到该页面。

我在 .htaccess 中添加了一个新行以允许结束斜线,如下所示

 RewriteRule ^(.+)/$ /$1 [L]

http://inside.amimusa.org/modulos-especificos/

有效,但未找到静态资源:

"NetworkError: 404 Not Found - http://inside.amimusa.org/modulos-especificos/js/sweetalert.min.js"
sweetalert.min.js
"NetworkError: 404 Not Found - http://inside.amimusa.org/modulos-especificos/css/sweetalert.css"
sweetalert.css
"NetworkError: 404 Not Found - http://inside.amimusa.org/modulos-especificos/js/sweetalert.min.js"
sweetalert.min.js
"NetworkError: 404 Not Found - http://inside.amimusa.org/modulos-especificos/css/sweetalert.css"

我尝试添加一条新的重写规则,如下所示:

RewriteRule ^(.+)/js/(.+)$ /$2 [L]
RewriteRule ^(.+)/css/(.+)$ /$2 [L]

但这似乎不是一个诀窍。

有谁可以帮忙吗?

答案1

这是诀窍:

RewriteRule ^(.+)/js/(.+)$ /js/$2 [L]
RewriteRule ^(.+)/css/(.+)$ /css/$2 [L]

相关内容