2017-09-02 164 views
2

如何獲取變量在PHP中,從第一樣

www.example.com/api/#_dwCh_RzrIo|mp4 

如何使用PHP來呼應_dwCh_RzrIo變量。

RewriteRule ^api/#(.*)|mp4$ api.php?id=$1 [L] 

請更正htaccess規則以及如何獲取#_dwCh_RzrIo變量。

+1

這就是所謂的「片段」,並且瀏覽器不會將其作爲請求的一部分發送給您的網站。你不能在其上重寫規則 – Clive

+2

如果你需要在一個URL中發送一個哈希字符,那麼你需要urlencode它 –

+0

當我無法獲得包含#片段的完整瀏覽器URL時,urlencode如何工作? –

回答

1

如果編碼片段部分即與#開始,那麼你可以使用此規則:

Options -MultiViews 
RewriteEngine On 

RewriteRule ^api/(#[^|]+) api.php?id=$1 [B,NC,L,QSA] 

您需要使用URL這樣來測試:

http://example.com/api/%23_dwCh_RzrIo%7Cmp4 
+0

謝謝,它適用於編碼,但我想解決包含#的索引頁面,所以我如何重定向我的頁面http://example.com/api/#_dwCh_RzrIo|Cmp4到http://example.com/api/% 23_dwCh_RzrIo%7Cmp4 –

+0

這需要通過代碼生成HTML源代碼的JavaScript來完成,其中包含這些鏈接。 – anubhava

+0

你能寫出完整的示例代碼,因爲我無法正確執行它。 –