2016-12-03 105 views
1

我在IIS上部署了MVC Web應用程序。當我運行(F5)時,它可以從VisualStudio中正常運行。該URL類似於MVC5 URL不匹配適用於localhost,但不適用於遠程機器

主頁:當輸入的數據和登錄按鈕點擊[只是一個簡單的表格]要顯示 localhost:8080/

第二頁 - >本地主機:8080 /數據/查詢/ FNAME = Markus & lname = Jennings

那是視覺工作室。視圖完美呈現並且事情按預期工作。

現在,當我通過手動輸入訪問從我的瀏覽器的Web應用程序 「localhost」 的場景是這樣的:

首頁:

localhost/website 

第二頁:

localhost/website/Data/Query/?fname=Markus&lname=Jennings 

正如你所看到的網站 word /目錄總是在那裏。我的應用程序發佈在 C:\ inetpub \ wwwroot \ website所以,我有點理解爲什麼網站的話在那裏。 數據是我的控制器和查詢是我的操作方法。

現在到了最棘手的部分:

當我嘗試使用同一臺機器,但不同的URL(即我的IP號碼)來訪問我的網站會發生以下情況

a.b.c.d/patinput 首頁呈現。 輸入數據和擊球登錄後,顯示的網址是:

a.b.c.d/Data/Query/?fname=Markus&lname=Jennings 

正如你可能已經猜到了「網站」目錄中不存在的URL。據我看來,它應該看起來像

a.b.c.d/website/Data/Query/?fname=Markus&lname=Jennings 

如果我手動添加網站路徑/字,第二頁是根據需要呈現。

第一頁是一個簡單的登錄表單,我把名字和姓氏當作輸入並調用一個javascript函數。從JavaScript函數中,我用我們的控制器(數據)調用從HTML頁面檢索的參數。

裏面的javascript函數我使用

window.location.href = '/Data/Query/?fname=' + fname + '&lname=' + lname; 

我已經試過addind一個 ''之前/數據/查詢.....也不起作用。

謝謝!

+0

追加它,我覺得這是無關的代碼。您應該正確配置IIS,以便不需要將「網站」添加到路徑中。 –

+0

從外界訪問時,我可以看到沒有設置的虛擬目錄。我試圖通過VS2013(在本地主機而不是IIS Express上)啓動Web應用程序,它完美無瑕。但是,當我嘗試從我的機​​器或其他機器上的chrome訪問網站時,它失敗。重定向只是不工作! – user2326079

回答

2

我通過解決方法解決了這個問題。看起來像這樣。 在我的javascript中,我保存了第一次打擊時的window.location.href值。使用localStorage作爲

localStorage。setItem(「baseUrl」,window.location.href);

,每當我想轉到其他一些的ActionResult我只是用這個的baseUrl

相關問題