我在Windows 8.1 64bit下安装了Mono 4.0.2
现在我正在测试它是如何运行的:控制台和WF应用程序的一切正常
但是,我无法运行任何ASP.NET应用程序/页面。我尝试了自己的网络应用和there中的简单示例,结果是一样的:
我尝试了不同的端口,mono.exe和xsp4.exe都在防火墙例外列表中。 IPv6已禁用。 Test-NetConnection成功,但telnet不会比“连接到127.0.0.1 ...”
更进一步如何让它正常工作?
以下是我尝试访问测试的页面:
<%@ Page Language="C#" %>
<html>
<head>
<title>Sample Calendar</title>
</head>
<asp:calendar showtitle="true" runat="server">
</asp:calendar>
netstat输出:
#just launched xsp4. 2772 is mono.exe
PS C:\Users\Orif> netstat -aon | findstr 9000
TCP 0.0.0.0:9000 0.0.0.0:0 LISTENING 2772
#now tried to access a page through firefox (5008)
PS C:\Users\Orif> netstat -aon | findstr 9000
TCP 0.0.0.0:9000 0.0.0.0:0 LISTENING 2772
TCP 127.0.0.1:2199 127.0.0.1:9000 ESTABLISHED 5008
TCP 127.0.0.1:9000 127.0.0.1:2199 ESTABLISHED 2772
更新
我已经安装了Xamarin Studio,它拥有自己的xsp4副本。该副本完全正常。
答案 0 :(得分:0)
似乎它应该工作,因为它不会在端口9000上抛出绑定错误,因此没有其他东西正在使用该端口。你列出的calander例子对我来说运行正常,没有错误。
尝试一些快速诊断:
%关闭防火墙
%如果安装了telnet,请使用telnet查看是否存在 可以连接到该端口:
ps> telnet 127.0.0.1 9000
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
%并通过Powershell进行测试
Test-NetConnection -ComputerName 127.0.0.1 -port 9000 -InformationLevel Detailed
~~~
TcpTestSucceeded : True
假设工作正常,请尝试Mono安装的完整XSP测试目录(位于安装路径下... \ lib \ xsp \ test)
注意:您需要该目录的管理员权限,否则其中一些示例会失败。以admin身份启动cmd / powershell会话,然后cd到测试目录并启动xsp4。
仍未连接?
尝试使用PC的实际IP地址而不是localhost。启动xsp4并将其绑定到您的网络IP地址:
xsp4 --address = xxx.xxx.xxx.xxx --port = 9000
telnet xxx.xxx.xxx.xxx --port = 9000
同时检查您的主机文件,看看localhost的ip是否被重新映射(?)
答案 1 :(得分:0)
如果hello.aspx和hello.aspx.cs位于/ var / www / firstaspnet中,则必须从同一目录/ var / www / firstaspnet运行xsp4。
答案 2 :(得分:0)
目前尚不清楚导致此问题的原因。也许这是系统更新,或者确实是一个错误,但我刚刚安装了Mono 4.4,问题就消失了。