用一个变量重写urt的htaccess

时间:2012-08-17 15:57:07

标签: .htaccess mod-rewrite url-rewriting

RewriteRule page/([0-9]+)$ page.php?id=$1

它可以工作,但包含的链接如css或js不起作用。 page/被视为文件夹,因此找不到链接(例如:<link rel="stylesheet" type="text/css" media="screen" href="css/default.css" />)。

另一个例子:如果“id”不存在,我执行此ErrorDocument 403 /notfound.php,但您被重定向到domain.com/page/notfound.php。我怎么能解决这个问题?

1 个答案:

答案 0 :(得分:2)

请改为尝试:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule page/([0-9]+)$ page.php?id=$1

仅当所请求的文件或目录不存在时,才会重定向。

有关mod_rewrite here

的更多信息

修改:

至于你找不到资源的问题,你必须在你的html页面中添加基础标记到你的头部分:

<base href="/">

有关base tag here

的更多信息