需要mod重写帮助(可选page_num)

时间:2012-01-29 13:37:03

标签: .htaccess mod-rewrite url-rewriting

我需要一些mod重写的帮助。我一直在寻找解决方案,我已经看到声称修复它的代码,但我得到404错误或页面不是css'ed。

这就是我要做的事情:

http://example/dashboard/$page/$page_num

现在我在仪表板目录中,这不是问题而且我可以获得$ page但是每当我尝试获取$ page_num时我都会遇到问题(因为它是一个可选的数字 - 它只用于20中的3个所以页)。

这是我现在的代码,我正在努力获得http://example/dashboard/$page

Options +FollowSymlinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([^/]+)$ index.php?page=$1
RewriteRule ^([^/]+)/([^/.]+)$ index.php?page=$1&id=$2

最后一行中的代码是我为$ page_num尝试的代码,我在顶部和底部尝试过它。

1 个答案:

答案 0 :(得分:4)

你可以试试这个:

Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([^/]+)/?$ index.php?page=$1&page_num=1 [NC,L]
RewriteRule ^([^/]+)/([0-9]+)/?$ index.php?page=$1&page_num=$2 [NC,L]

我在页面中添加了&id=1,因为默认情况下您要加载第一页。第二个参数我只是编号所以如果你有其他规则要求letterers或数字它不会与这个相冲突。