mod_rewrite有问题

时间:2011-02-20 05:53:18

标签: php apache mod-rewrite

我正在尝试更改

的网址
http://www.tomttb.com/school/index.php?page=p/logbook/my.php

http://www.tomttb.com/school/logbook/my

我现在有了这个:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)$ index.php?page=p/$1/$2.php [L]

它有效,他给了我index.php,但图片,样式表等不会加载,因为浏览器认为他在文件夹http://www.tomttb.com/school/logbook/my中。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

简单的答案是为每个页面添加一个<base>标记,在您的情况下,可以通过将其添加到index.php来完成。

从W3C开始,基本标签的href属性

  

指定一个绝对URI,它充当解析相对URI的基URI

所以,你可以添加像

这样的东西
<base href="http://www.tomttb.com/school/">

使用指定的URL(http://www.tomttb.com/school/)解决所有相对路径,而不是浏览器看到的URL(http://www.tomttb.com/school/)日志/我的)