RewriteRule .htaccess路由一些链接

时间:2014-02-27 21:26:45

标签: .htaccess routing

我对.htaccess几乎一无所知,所以我想问一下我该如何做以下事情的人。

这些是一些可能的链接:

root/alfa
root/alfa/?a=1&b=4
root/beta/?c=0

我希望这些链接显示为:

root/alfa/
root/alfa/?a=1&b=4
root/beta/

我想像这样重定向: 我遇到的一个问题是,使用尾部斜杠,索引不再找到我的CSS文件。

root/index.php?uri=alfa
root/index.php?uri=alfa&a=1&b=4
root/index.php?uri=beta&c=0

请帮我解决一些htaccess代码,因为有很多可能的RewriteCondRewriteRule,我不知道哪个是我可以使用的。

1 个答案:

答案 0 :(得分:0)

将此代码放入DOCUMENT_ROOT/.htaccess文件中:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/.]+)/?$ /index.php?uri=$1 [L,QSA]
  • 对于css / js,使用css,js,images文件中的绝对路径而不是相对路径。这意味着您必须确保这些文件的路径以http://或斜杠/开头。
  • 或者您可以尝试在页面的HTML标题中添加:<base href="/" />