[英]Redirect a URL with /#/
我們當前的網站是使用AngularJS
構建的,因此其中包含帶有/#/
URL,例如http://www.website.com/#/termsofuse
短視而言,術語或用法的URL已被硬編碼到移動應用程序中,盡管已進行了更改,但某些用戶仍具有較舊的版本。
我們將轉到WordPress網站(在Azure上運行),使用條款的新URL為http://www.website.com/termsofuse
問題是,如果使用舊的URL(從舊版本中使用硬編碼的應用程序中),我想重定向到新的URL,但是我找不到在URL中使用/#/
做到這一點的方法(否則,我可以在舊的URL上使用HTML/JS
進行重定向)。
我曾嘗試在Google和此處搜索解決方案,但是盡管我確定有人遇到了這個問題,但我發現很難定義搜索字詞才能獲得有價值的結果。
我也考慮過將其發布在WordPress stackexchange上,但這並不是一個真正的WordPress問題,我假設我需要使用其他方法。
感謝任何想法或建議。 提前致謝。
到目前為止,我已經從響應中了解到我可能需要一個JS解決方案,並且基於此,我發現下面的內容看起來很相似(至少向我展示了如何隔離URL后的片段)。 由於我的問題非常具體,我只需要查找特定的片段#/ termsofuse,是否可以使用此代碼(帶有中間標記)來查找該字符串並基於該字符串進行重定向?
可悲的是,這是不可能的,因為#
之后的所有內容都不會發送到服務器。
在這種情況下,許多人要做的是使用javascript / ajax解決方案加載頁面。
根據您的描述,因為您的新網站是基於WordPress的,而沒有AngularJs。
因此,幾乎不可能以傳統方式滿足您的需求。 正如主題標簽#
是決不會在服務傳遞客戶端象征,所以IIS在Azure上后不會得到部分#
的URL,還URL重寫模塊將無法看到這一點。
因此,如果可能的話,可以修改WordPress網站的首頁,這是一種使用JavaScript的變通方法,即使用JavaScript獲取URL #
后的部分並重定向到正確的URL。 這是代碼片段:
(function () { console.log(window.location.href); var url = window.location.href; params = url.split('#'); console.log(params); if(params[1]){ window.location.href = params[1]; } })();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.