.htaccess冲突

时间:2012-03-27 10:01:13

标签: css .htaccess

我有以下.htaccess RewriteEngine On

DirectoryIndex index.php

RewriteRule ^([a-zA-Z0-9_-]{3,20})/([^/]+)/([^/]+)?$ index\.php?page=$1&s=$2&o=$3 [L]

RewriteRule ^([a-zA-Z0-9_-]{3,20})/([^/]+)?$ index\.php?page=$1&s=$2 [L]

RewriteRule ^([a-zA-Z0-9_-]{3,20})/?$ index\.php?page=$1 [L]

RewriteRule ^([a-zA-Z0-9_-]{3,20})?$ index\.php?page=$1 [L]

ErrorDocument 404 /404

它显示mu url作为localhost / mysite / home的第一个周边并且它正常但是当我的url是localhost / mysite / home / user时,页面的整体外观受到干扰,即此处不包含css和图像 任何人都可以帮我这个吗?

2 个答案:

答案 0 :(得分:0)

您可能通过指定相对路径(即不以“/”开头)来加载您的CSS。指定css的路径是绝对的,你会没事的。

编辑: 我在这里给出的答案是为了比评论更好的格式化: 您应指定不应重写现有文件:

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule .* - [L]

将此作为您的第一条规则。

答案 1 :(得分:0)

我想原因是因为,在index.php文件中,脚本和css文件被赋予相对位置。例如:<link rel="stylesheet" href="style.css" />您需要做的是将位置更改为绝对路径。例如:<link rel="stylesheet" href="http://localhost/mysite/style.css" />希望这会对你有帮助。