Options +FollowSymLinks
RewriteEngine on
#RewriteBase /
RewriteRule ^tricks/([0-9]+) tricks.php?show=one&tid=$1 [NC,L]
RewriteRule ^tricks/([a-z]+) tricks.php?show=frmsec&sec=$1 [NC,L]
RewriteRule ^tricks/?$ tricks.php?show=all [NC,L]
RewriteRule ^discussion/?$ discussion.php?show=all [NC,L]
这不加载CSS和Javascript文件
仅 http://localhost/web/tricks和http://localhost/discussion正常运作
答案 0 :(得分:0)
未经过测试(因为我无法在此测试),但您需要排除文件。这是一个例子(来自TYPO3的.htacces的信用):
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)\.(\d+)\.(php|js|css|png|jpg|gif|gzip)$ $1.$3 [L]
EdIt根据@bouke的评论:
您的样式表链接中有相对路径。这不行。当您使用localhost / web / tricks时,相对路径是错误的(因为/ web / tricks中没有CSS文件夹)。
您需要使用绝对路径或使用基本网址标记(<base ...>
)
答案 1 :(得分:0)
在RewriteCond %{REQUEST_FILENAME} !-f
之前添加RewriteRule
。
答案 2 :(得分:0)
如果您使用网址http://localhost/web/tricks/000
而不是localhost/tricks.php?show=one&tid=000
,则您的相对网址将相对于/web/tricks/
而不再是/
。
您必须将href更改为../../CSS/content.css
或最好使用/CSS/content.css
。后者将创建相对于根目录的路径,而不是当前页面的目录&#39;。