我正在尝试美化 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]