【发布时间】:2012-10-29 15:33:39
【问题描述】:
我正在使用 apache 的 mod_rewrite 模块将我的 URL 结构(例如,www.mydomainname.com/user.php?u=somename)改进为一些花哨的 URL,例如 www.mydomainname.com/user/somename。我已经成功地实现了它,直到我遇到 CSS 和 JS 相对路径问题的这种非常糟糕的情况。
每当我打开www.mydomainname.com/user/somename 时,它在没有CSS 和JS 的情况下成功加载,只有文本和基本的HTML。我使用了 chrome 的“检查元素”功能,它可以帮助我了解发生的以下错误。
GET http://www.mydomainname.com/user/css/style.css 404 (Not Found) somename:5
GET http://www.mydomainname.com/user/css/developer.css 404 (Not Found) somename:6
GET http://www.mydomainname.com/user/js/jquery-1.5.2.js 404 (Not Found) somename:7
GET http://www.mydomainname.com/user/js/jquery.form.js 404 (Not Found) somename:5
.htaccess 文件有以下内容-
DirectoryIndex index.html.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^user/([^/.]+)/?$ user.php?u=$1 [L]
user.php 位于父文件夹以及 CSS 和 JS 文件夹中。我知道了原因,但不知道如何消除错误。
EDIT:user.php文件中给出的CSS和JS的路径是-
<link type = "text/css" rel = "stylesheet" href = "css/style.css">
<link type = "text/css" rel = "stylesheet" href = "css/developer.css">
<script type="text/javascript" src="js/jquery-1.5.2.js"></script>
<script type="text/javascript" src="js/jquery.form.js"></script>
【问题讨论】:
标签: php mod-rewrite