2011-12-17 37 views
15

Tôi đang tạo Mô-đun Nancy và cuối cùng sẽ được lưu trữ bên trong Dịch vụ Windows. Tôi hiện đang chạy nó bên trong một ứng dụng thử nghiệm WPF. Để bắt đầu Nancy hosting, Tôi đang sử dụng Nancy.Hosting.Self và gọi:Truy cập từ xa vào Máy chủ Tự động của Nancy

nancyHost = new Nancy.Hosting.Self.NancyHost(new Uri("http://localhost:8080")); 
nancyHost.Start(); 

Trên máy tính địa phương của tôi, tôi có thể đi đến một trình duyệt web và truy cập vào mô-đun của tôi bằng cách nhập http://localhost:8080 vào thanh địa chỉ.

Nếu tôi đến một máy khác, tôi không thể truy cập dịch vụ. Tường lửa Windows của tôi bị tắt.

Nếu tôi bắt đầu lưu trữ với bất kỳ thứ gì khác ngoài localhost trong baseUri, tôi nhận được ngoại lệ "truy cập bị từ chối" khi gọi nancyHost.Start();

Có điều gì đó mà tôi bị thiếu không? Tôi có thể truy cập mô-đun Nancy từ bất kỳ máy nào miễn là tôi biết IP: Cổng đến máy đang lưu trữ không? Có bất kỳ loại "host headering" nào mà tôi cần biết không?

Cảm ơn sự giúp đỡ của bạn về điều này.

Trả lời

24

Windows sẽ ngăn bạn nghe trên cổng mà không được phép. Bạn có thể chạy quá trình của bạn as administrator, hoặc thêm cho phép sử dụng "netsh":

netsh http thêm urlacl url = http: // +: 8080 người sử dụng/app = domain \ user

Các "+" là ký tự đại diện để nó có thể nghe trên bất kỳ IP nào.

Thông thường bạn sẽ xử lý sau trong quá trình cài đặt, vì vậy bạn có thể chạy với tư cách là quản trị viên để gỡ lỗi, sau đó đảm bảo trình cài đặt của bạn đặt quyền liên quan.

+0

Chỉ muốn bao gồm một liên kết đến những lời khuyên! bạn đã đăng trên Google Group ... https://groups.google.com/forum/#!topic/nancy-web-framework/UnvrNss9pyM Cảm ơn bạn lần nữa, Brian –

0

Để gỡ lỗi địa phương, sử dụng

http://+:8733/Design_Time_Addresses 

Bạn có thể thêm bất kỳ thư mục con mà bạn thích, ví dụ

http://+:8733/Design_Time_Addresses/myService 

và debug nó ở

http://localhost:8733/Design_Time_Addresses/myService 

mà không cần chạy IDE của bạn (Visual Studio?) Với tư cách là Quản trị viên.

0

Nhìn này: Self-Hosting-Nancy

Các Cấu hình máy chủ: UrlReservations, thêm dưới mã:

var configuration = new HostConfiguration 
     { 
      UrlReservations = new UrlReservations { CreateAutomatically = true } 
     }; 

OK, bạn có thể tạo máy chủ của bạn ~

Các vấn đề liên quan