Htaccess переписать второе правило не работает - PullRequest
0 голосов
/ 30 апреля 2011

Я хочу переписать URL-адреса, например index.php? C = 4 & index.php? G = 23 в website.com / games / categoryname / id / и то же самое для страницы игры website.com / play / gamename / id /

мой файл htaccess выглядит так:

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^([a-zA-Z0-9\-_%]+)/([a-zA-Z0-9\-_%]+)/([0-9]+)/$ index.php?c=$3
RewriteRule ^([a-zA-Z0-9\-_%]+)/([a-zA-Z0-9\-_%]+)/([0-9]+)/$ index.php?g=$3

Проблема в том, что работает только первое правило перезаписи, если я его прокомментирую, то будет работать и второе, но не оба одновременно :(. Я проверяю это на MAMP

Не могли бы вы мне помочь?

Ответы [ 2 ]

3 голосов
/ 30 апреля 2011

Они не могут работать оба, поскольку они имеют одинаковое условие - вы установили два разных действия с одинаковыми критериями, и выполняется только первое.

Ах, я понял, чего вы пытаетесь достичь:

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(games)/([a-zA-Z0-9\-_%]+)/([0-9]+)/$ index.php?c=$3 [L]
RewriteRule ^(play)/([a-zA-Z0-9\-_%]+)/([0-9]+)/$ index.php?g=$3 [L]
1 голос
/ 30 апреля 2011

Вы должны сделать что-то вроде этого:

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^play/([a-zA-Z0-9\-_%]+)/([0-9]+)/$ index.php?c=$2
RewriteRule ^games/([a-zA-Z0-9\-_%]+)/([0-9]+)/$ index.php?g=$2
...