2017-10-18 47 views
0

我正在尋找幾個小時來配置我的nginx。uri具有百分比字符的nginx配置

問題: 我遇到的網址是這樣的:https://exemple.com/myAction/%123456 請注意%123456 不幸的是這部分是因爲它並不能修改 (我不能跳過%)

Nginx的(試圖)解釋%XX並將修改URI到我的控制器:

  • %403456變得@ 3456,
  • %5B3465變爲[3456等

問題: 有沒有辦法說nginx不改變%XX?

在此先感謝

+0

'%'是一個保留字符。要編寫一個包含文字'%'的URI,它需要被編碼爲%25'。有關詳細信息,請參閱此[wiki文章](https://en.wikipedia.org/wiki/Percent-encoding#Percent-encoding_the_percent_character)。 –

+0

@RichardSmith謝謝,所以您認爲無法使用重寫規則,如** rewrite(/myAction/%)(.*)$/myAction/%25 $ 2; ** ?? \\我很糟糕在nginx和重寫,但也許這是可能的 – noob

回答

0

在你把它發送給你的控制器部分,使用變量$request_uri,其非規範化的URI查詢字符串,用$request_uri?下降的查詢字符串。

$scheme://$host$request_uri? 
or 
$scheme://$host$request_uri