什麼是下面的情況的htaccess的規則:獲取PHP參數
我我的用戶重定向到這個頁面:
system/abc123/step1
沒有規則則可能是:
system.php?id=abc123&step=step1
但是我怎樣才能通過$_GET
得到這兩個參數通過?
ABC123
第一步
非常感謝。
什麼是下面的情況的htaccess的規則:獲取PHP參數
我我的用戶重定向到這個頁面:
system/abc123/step1
沒有規則則可能是:
system.php?id=abc123&step=step1
但是我怎樣才能通過$_GET
得到這兩個參數通過?
ABC123
第一步
非常感謝。
我一直在尋找的是:
在我的.htaccess:
RewriteEngine on
RewriteRule ^system/(.+)/(.+)$ system?token=$1&step=$2 [L]
在我system.php頁:
$QUO_Token = $_GET['token']; // abc123
$QUO_Step = $_GET['step']; // step1
自己的解決方案是好的,它的工作原理如預期的那樣,無需觸摸PHP代碼。
但是,對於我的劇本我採取不同的方式:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /processUrl.php [NC, L]
通過這種方式,ALL(不Foud)傳入的請求都重定向到processUrl.php,其中有一個代碼像這樣:
$uri = (object) parse_url($_SERVER['REQUEST_URI']);
$uri->thread = explode('/', substr($uri->path, 1));
if('system' == $uri->thread[0])
{
$_GET['id'] = $uri->thread[1];
$_GET['step'] = $uri->thread[2];
include('system.php');
}
elseif('browse' == $uri->thread[0])
{
// Other condition here
}
elseif(isset($uri->query))
{
// Process ORIGINAL $_GET
}
else
{
include('Your404NotFoundPage.php');
}
我更喜歡上述方法由於: