2

Windows 8.1 64ビットにMono 4.0.2をインストールしました

今、私はそれがどのように動作するかをテストしています: コンソールと WF アプリケーションですべて問題ありません

ただし、ASP.NET アプリ/ページを実行できません。私は自分のWebアプリとそこからの簡単な例を試しましたが、結果は同じです:

  • xsp4 が起動し、ポート 9000 でリッスンし、ルート ディレクトリ (webapp ディレクトリ) を表示して待機します。
  • localhost:9000/、localhost:9000/hello.aspx にアクセスしようとしています
  • ブラウザーは永遠に応答を待ち続け、コンソールでは何も起こりません (--verbose と --loginfo を試しました)。

別のポートを試してみましたが、mono.exe と xsp4.exe の両方がファイアウォールの例外リストに含まれています。IPv6 が無効になっています。Test-NetConnection は成功しますが、telnet は「Connecting To 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

アップデート

xsp4 の独自のコピーを持つ Xamarin Studio をインストールしました。そのコピーは完全に正常に機能します。

4

3 に答える 3

0

何が問題を引き起こしたのかはまだ不明です。システムの更新だったのかもしれませんし、実際にはバグだったのかもしれませんが、Mono 4.4 をインストールしたところ、問題はなくなりました。

于 2016-06-13T15:55:50.067 に答える
0

ポート 9000 でバインド エラーがスローされていないため、そのポートは他に使用されていないため、機能しているようです。あなたがリストしたカレンダーの例は、エラーなしでうまく動作します。

簡単な診断を試してください。

% ファイアウォールをオフにする

% 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 の下にあります) を試してください。

注:そのディレクトリへの管理者権限が必要です。そうしないと、これらの例のいくつかが失敗します。cmd/powershell セッションを管理者として開始し、cd でテスト ディレクトリに移動して xsp4 を開始します。

まだ接続されていませんか?

localhost の代わりに、PC の実際の IP アドレスを使用してみてください。xsp4 を起動し、ネットワーク IP アドレスをバインドします。

xsp4 --address=xxx.xxx.xxx.xxx --port=9000

telnet xxx.xxx.xxx.xxx --port=9000

また、ホスト ファイルをチェックアウトして、localhost の IP が再マップされているかどうかを確認します (?)

于 2015-07-18T18:02:49.790 に答える