Javascript MVC5 URL不匹配适用于本地主机,但不适用于远程计算机

Javascript MVC5 URL不匹配适用于本地主机,但不适用于远程计算机,javascript,asp.net-mvc,iis,ip,localhost,Javascript,Asp.net Mvc,Iis,Ip,Localhost,我在IIS上部署了一个MVC Web应用程序。当我点击run(F5)时,它在VisualStudio中运行良好。Url看起来像 主页: localhost:8080/ 当输入和登录按钮中的数据单击[只是一个简单的表单]->localhost:8080/Data/Query/?fname=Markus&lname=Jennings时显示的第二页 那是visual studio。在这里,视图被完美地渲染,一切都按预期进行 现在,当我通过手动键入“localhost”从浏览器访问webapp时,场景如

我在IIS上部署了一个MVC Web应用程序。当我点击run(F5)时,它在VisualStudio中运行良好。Url看起来像

主页:
localhost:8080/

当输入和登录按钮中的数据单击[只是一个简单的表单]->localhost:8080/Data/Query/?fname=Markus&lname=Jennings时显示的第二页

那是visual studio。在这里,视图被完美地渲染,一切都按预期进行

现在,当我通过手动键入“localhost”从浏览器访问webapp时,场景如下所示:

主页:

localhost/website
第二页:

localhost/website/Data/Query/?fname=Markus&lname=Jennings
正如你所看到的,网站总是在那里。我的申请在里面公布 C:\inetpub\wwwroot\website所以,我有点理解为什么会有“网站”这个词。 数据是我的控制器,查询是我的操作方法

现在是棘手的部分:

当我尝试使用同一台机器但使用不同的url(即我的IP号码)访问我的网站时,会发生以下情况

a.b.c.d/patinput
主页被呈现。 输入数据并点击登录后,显示的URL为:

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;
我已尝试在/Data/Query…..之前添加“.”。。。。。也不行


谢谢大家!

我通过一个变通办法解决了这个问题。看起来像这样。 在我的javascript中,我在第一次点击时保存了window.location.href值。将本地存储用作

localStorage.setItem(“baseUrl”,window.location.href)


每当我想导航到其他Actionresult时,我只需使用这个baseUrl附加它,我认为这与代码无关。您应该正确配置IIS,这样就不需要在路径中添加“网站”。我可以看到从外部世界访问时未设置虚拟目录。我试着通过VS2013(在本地主机而不是IIS Express上)启动这个web应用程序,它工作得非常完美。然而,当我尝试在我的机器或其他机器上从chrome访问网站时,它失败了。重定向根本不起作用!!