.htaccess 如何在htaccess中使用变量正确格式化URL
我正在尝试格式化URL,假设我有一个如下所示的URL:.htaccess 如何在htaccess中使用变量正确格式化URL,.htaccess,.htaccess,我正在尝试格式化URL,假设我有一个如下所示的URL: https://example.com/api.php?getUser=12 https://example.com/api/user/12 但我正试图归档如下内容: https://example.com/api.php?getUser=12 https://example.com/api/user/12 我试过这样的东西 RewriteEngine on RewriteRule api/user/ api.php?getUser
https://example.com/api.php?getUser=12
https://example.com/api/user/12
但我正试图归档如下内容:
https://example.com/api.php?getUser=12
https://example.com/api/user/12
我试过这样的东西
RewriteEngine on
RewriteRule api/user/ api.php?getUser=
但我很确定我做错了什么,我想知道这是否有可能(我不熟悉htaccess)。您的
重写规则不完整,与输入URL不匹配。您需要将用户ID添加为正则表达式:
RewriteRule ^api/user/([0-9]+)/?$ api.php?getUser=$1 [L]
正则表达式是([0-9]+)
部分。它匹配至少包含一个数字的任何数字。重写URL时,Apache将获取该数字并将其放置在$1
占位符处
请注意,[L]
是一个重写规则标志。这意味着,如果此规则匹配,则不会处理进一步的规则