1
我正在使用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代码更短,也欢迎:)