htaccess,代码不起作用

时间:2015-10-22 21:53:07

标签: .htaccess rewrite

我的htaccess代码有问题。我工作了几天但无法解决它。

网站帖子网址:/index.php?a=post&m=37

我想要的是什么:/post/37

我的htaccess:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?a=page&b=$1 [L]
RewriteRule ^(.*)$ /index.php?a=post&m=$1 [L]

这是有效的:RewriteRule ^(.*)$ /index.php?a=page&b=$1 [L]

但是当我这样说:RewriteRule ^(.*)$ /index.php?a=post&m=$1 [L]我在网站的所有页面都收到“内部服务器错误”。解决方案是什么? :|

1 个答案:

答案 0 :(得分:0)

相同模式(.*)无法路由到2个不同的目标。

你可能意味着这个:

RewriteEngine on

# skip all files and directories from rewrite rules below
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

RewriteRule ^post/(\d+)/?$ /index.php?a=post&m=$1 [L,QSA]

RewriteRule ^(.*)$ index.php?a=page&b=$1 [L,QSA]