目前我有一个漂亮的 url 的重写规则,它工作正常。我试着在一秒钟内添加,这给我带来了问题:
# redirect /?p=xyz to /xyz
RewriteCond %{QUERY_STRING} ^p=(.*)$
RewriteRule ^(.*)$ /index.php/%1 [L]
# Removes index.php from ExpressionEngine URLs
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
第二个工作正常,但第一个给我内部服务器错误。基本上我想要 ?p=* 中的任何东西去 /index.php/*
[编辑] 澄清一下,我需要http://domain.com/?p=test等同于http://domain.com/test/