Php 重写URL并获取参数
目前我有以下url格式:Php 重写URL并获取参数,php,url-rewriting,Php,Url Rewriting,目前我有以下url格式: www.domain.de/?paramter=value 使用php,我可以访问如下值: <? echo $_GET['paramter']; ?> 如何使用htaccess行实现这一点,以及如何在重写后使用php访问它?请尝试以下方法: $g = $_GET; $new_str = ''; foreach($g as $key => $value) { $new_str .= "$key=$value"; }
www.domain.de/?paramter=value
使用php,我可以访问如下值:
<? echo $_GET['paramter']; ?>
如何使用htaccess行实现这一点,以及如何在重写后使用php访问它?请尝试以下方法:
$g = $_GET;
$new_str = '';
foreach($g as $key => $value) {
$new_str .= "$key=$value";
}
echo $_SERVER['SERVER_NAME'] ."/". $new_str;
使用以下URL:
http://site.test/i.php?p1=1&p2=2&p3=3
它将返回:
site.test/p1=1p2=2p3=3
基本上,这段代码循环遍历$\u GET参数,然后获取键和值,将它们转换为字符串,然后用该字符串编写最终的URL。您可以根据需要格式化输出
www.domain.de/paramter=value
这是一种非常奇怪的价值观表达方式。但是,每当用户输入这样的URL时,您都可以通过Apache服务器上的lower.htaccess确保用户登录到正确的页面
RewriteEngine On
RewriteRule ^/?([^=]+)=(.+)$ /?$1=$2 [L,NC,R=302]
演示:
这样,您的PHP代码就完好无损,不需要对后端代码进行任何更改。如果您希望进行永久重定向,请进行
R=301
您最好将其重写为www.domain.de/value
并使用parameter=valueno进行内部重定向。我需要的格式如我所述:/
RewriteEngine On
RewriteRule ^/?([^=]+)=(.+)$ /?$1=$2 [L,NC,R=302]