Я использую mod_rewrite, чтобы сделать мои URL чистыми.При этом:
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ index.php?page=$1&sub=$2
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/$ index.php?page=$1&sub=$2
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([0-9]+)$ index.php?page=$1&sub=$2&id=$3
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([0-9]+)/$ index.php?page=$1&sub=$2&id=$3
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)$ index.php?page=$1&sub=$2&action=$3
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/$ index.php?page=$1&sub=$2&action=$3
Это все изменит красиво, например: website.com/index.php?page=user&sub=profile
на website.com/user/profile/
.
Но что, если есть другие переменные $_GET
ПОСЛЕ профиля.Так, например, если пользователь вызывает: website.com/user/profile/?do=that&go=ahead
Когда я пытаюсь напечатать $_GET['do']
и $_GET['go']
, они возвращаются пустыми.
Есть идеи?
Также приветствуются предложения по сокращению кода mod_rewrite:)