HTAccess URL重写会影响GET变量

时间:2012-04-20 14:05:37

标签: php linux wordpress .htaccess

我们正在使用wordpress,我们在.htaccess中有以下内容:

# BEGIN WordPress

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>

# END WordPress

我们有一个类似http://subdomain.example.com/select-a-card/?q=fuel的网址,我们想要重写它,使其变得类似于http://subdomain.example.com/fuel-card/

我需要添加到htaccess才能执行此操作?此外,这会影响使用GET变量的运行查询吗?

1 个答案:

答案 0 :(得分:1)

什么都没有,只需阅读wordpress手册并编辑你的设置。结帐http://codex.wordpress.org/Using_Permalinks

---编辑

这可以做到,但前提是你想要重写的url标准标记。 IE浏览器。如果您只想重写select-a-card网址,或只使用类似http://site.com/uri/?q=something的语法重写网址。但是,如果网址的语法差别太大,则必须添加大量重写。

在这种特殊情况下,这样的事情应该有效:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    # add your specifics below:
    RewriteRule ^/select-a-card/\?q=(.*) $1-card/

    RewriteRule . /index.php [L]
</IfModule>