所以我试图像这样重写网址:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) index.php?page=$1 [QSA]
工作完美,但JavaScript和CSS的相对路径搞砸了。
下面的行不应该排除文件吗?
RewriteCond %{REQUEST_FILENAME} !-f
答案 0 :(得分:2)
RewriteCond %{REQUEST_FILENAME} !-f
确保不会重写现有文件,因此images / css / js文件不会路由到index.php
。
但是你的问题似乎是使用images / css / js的相对路径。确保在css,js,images文件中使用绝对路径而不是相对路径。这意味着您必须确保这些文件的路径以http://
或斜杠/
开头。
,您可以在页面的HTML <head>
部分添加:
<base href="/" />
以便从该基本网址解析每个相对网址,而不是从当前网页的网址解析。