URL丢失每个页面加载的端口号

时间:2010-03-16 13:47:57

标签: .net asp.net url port-number

我目前正在处理某个本地网站。

默认端口已更改,由于技术原因不能再包含在URL中,所以现在我在URL的IP末尾使用某个端口,例如

100.100.100.100/website.aspx

不再有效(默认情况下访问80)

100.100.100.100:81/website.aspx

与端口一起工作。

工作,虽然我无法点击任何链接或任何东西,端口消失(新页面不加载)。然后我保留相同的URL,只在IP的末尾包含端口,它再次起作用,直到我点击其中的另一个链接。

我可以访问更改每个链接,但我想这不是正确的方法。

我应该如何开始?

- [编辑] -

所有网址都是相对的,此问题的整个问题在IE中不适用,这只发生在其他浏览器上。

/website.aspx

我所说的关于更改每个链接的内容将类似于

:10/website.aspx

但我真的不知道......

- [编辑] -

根据要求:

<asp:HyperLink runat="server" Text="link" NavigateUrl="~/folder/folder/page.aspx" />

3 个答案:

答案 0 :(得分:3)

如果输入:

http://1.2.3.4/website.asp

这相当于

http://1.2.3.4:80/website.asp

如果您需要指定其他端口,则必须在URL中明确包含该端口。

选项1 如果您的所有链接都是

形式
http://1.2.3.4/website.asp

您需要将其更改为

http://1.2.3.4:10/website.asp

选项2

选项2是将所有链接更改为相对而不是:

http://1.2.3.4/anotherpage.asp

您将其更改为

/anotherpage.asp

然后,浏览器将为每个请求使用相同的IP和端口号。

选项2是首选,因为它使网站能够完全抵御这些类型的移动。

答案 1 :(得分:0)

尝试在IIS中添加Binding。 (我假设您正在使用IIS)

编辑:我假设你已经设置了绑定到端口10.添加一个没有端口的替代绑定(如果可能的话。如果没有,为端口80添加绑定)我希望这有助于

答案 2 :(得分:-1)

Internet Explorer不喜欢第一个冒号不属于方案定义(“http://”或“https://”)的地址。您是以“http://”(或“https://”)开始链接的?如果没有,它可能会导致您遇到的问题。