生活随笔
收集整理的這篇文章主要介紹了
长链转短链实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一:根據長鏈生成6位的短鏈字母,并保存二者之間的映射關系
二:配置nginx轉發,利用 rewrite 指令將請求重定向到自己提供的接口,根據6位唯一碼去數據庫中查找原鏈接,重定向過去
nginx 配置例如
訪問:短鏈 test.ppf.com/asdFgj
server
{listen 80
;server_name test.ppf.com
;location /
{rewrite
'^/[a-zA-Z0-9]{6}$' https://test.ppf.com/fsd/shortUrl/conversion/
$document_uri permanent
;try_files
$uri $uri/ /index.html
;root /www/web/fsd_h5/h5/
;index index.html index.htm
;} }
rewrite指令
?該指令通過正則表達式的使用來改變URI.可以同時存在一個或者多個指令,按照順序一次對URL進行匹配和處理。該指令可以在server塊后者location塊中配置
?
??語法:指令語法:rewrite regex replacement [flag];
? rewrite是實現URL重定向的重要指令regex:用來匹配URI的正則表達式;replacement:匹配成功后用來替換URI中被截取內容的字符串,默認情況如果該字符串包含“http://”、
"https://"開頭,則不會繼續向下對URI進行其他處理。直接返回重寫的URI給客戶端flag:用來設置rewrite對URI的處理行為,包含如下數據:標記符號 說明last 終止在本location塊中處理接收到的URI,并將此處重寫的URI作為新的URI使用其他location進行處理。(只是終止當前location的處理)
break 將此處重寫的URI作為一個新的URI在當前location中繼續執行,并不會將新的URI轉向其他location。redirect 將重寫后的URI返回個客戶端,狀態碼是302,表明臨時重定向,主要用在replacement字符串不以“http://”,“ https://”或“
$scheme” 開頭;permanent 將重寫的URI返回客戶端,狀態碼為301,指明是永久重定向;
總結
以上是生活随笔為你收集整理的长链转短链实现的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。