簡體   English   中英

重寫 URL 並獲取參數

[英]rewrite URL and get parameter

目前我有這個網址格式:

www.domain.de/?paramter=value

使用 php 我可以訪問這樣的值:

<? echo $_GET['paramter']; ?>

但我想將 url 重寫為這種格式:

www.domain.de/paramter=value

如何使用 htaccess 行實現這一點,以及如何在重寫后使用 php 訪問它?

請試試這個:

$g = $_GET;

$new_str = '';
foreach($g as $key => $value) {
    $new_str .= "$key=$value";
} 

echo $_SERVER['SERVER_NAME'] ."/". $new_str;

使用以下網址:

http://site.test/i.php?p1=1&p2=2&p3=3 ,

它將返回:

site.test/p1=1p2=2p3=3

基本上,這段代碼遍歷 $_GET 參數,然后獲取鍵和值,將它們轉換為字符串,然后使用該字符串寫入最終 URL。 您可以根據需要格式化輸出。

www.domain.de/paramter=value

是一種非常奇怪的價值觀。 但是,每當用戶輸入此類 URL 時,您都可以通過 Apache 服務器上的 .htaccess 確保用戶登陸正確的頁面

RewriteEngine On
RewriteRule ^/?([^=]+)=(.+)$ /?$1=$2 [L,NC,R=302]

演示: https : //htaccess.madewithlove.be?share=53dc007b-3781-4d1d-80c6-5f0234cdf11a

這樣,您的 PHP 代碼就完好無損,后端代碼無需更改。 如果您希望進行永久重定向,請設置R = 301

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM