2008-08-20 32 views
47

Tôi đang thử nghiệm trang web ASP.NEt. Khi tôi thực thi nó, nó khởi động ASP.NET Development Server và mở ra một trang.Tôi có thể truy cập máy chủ Phát triển ASP.NET trong mạng nội bộ không?

Bây giờ tôi muốn thử nghiệm nó trong mạng nội bộ mà tôi có.

  1. Tôi có thể sử dụng máy chủ này hoặc tôi cần định cấu hình IIS trong máy này không?

  2. Tôi có cần định cấu hình thứ gì đó để nó hoạt động không?

Tôi đã thay đổi localhost thành IP chính xác và tôi đã mở tường lửa.

Cảm ơn

+0

Có thể nó giúp người khác: bạn có thể sử dụng www.browserstack.com để truy cập máy ảo với các phiên bản trình duyệt khác nhau trực tiếp từ máy dev. (Tôi không có liên kết với công ty) –

Trả lời

50

Có bạn có thể! Và bạn không cần IIS

Chỉ cần sử dụng một đường hầm Java TCP đơn giản. Tải xuống ứng dụng Java này & chỉ cần hầm lại lưu lượng truy cập. http://jcbserver.uwaterloo.ca/cs436/software/tgui/tcpTunnelGUI.shtml

Trong cửa sổ lệnh, sau đó bạn muốn chạy các ứng dụng java như thế này ... Giả sử bạn muốn truy cập bên ngoài trên cổng 80 và môi trường gỡ lỗi tiêu chuẩn của bạn chạy trên cổng 1088 ...

java -jar tunnel.jar 80 localhost 1088 

(Cũng trả lời ở đây: Accessing asp. net development server external to VM)

+9

+1 Tôi nghĩ câu trả lời này hữu ích hơn nhiều, vì nó cho phép bạn gỡ lỗi một yêu cầu đến từ một máy bên ngoài. Cá nhân, tôi sử dụng phần mềm đường hầm này: http://www.pocketsoap.com/tcpTrace/ – jwd

+3

Đề xuất tốt! Đường hầm Java TCP là siêu chậm, vì vậy có lẽ một trong những pocketsoap là một sự lựa chọn tốt hơn. – strongriley

+3

Tôi nghĩ rằng cần được đánh dấu là câu trả lời hay nhất. Đây là cách không xâm nhập nhất để đưa mọi thứ vào hoạt động. Ngoài ra, bạn cũng có thể xem các gói dữ liệu. – Peter

1

Tôi tin rằng máy chủ ASP.NET được xây dựng chỉ hoạt động trên máy chủ cục bộ. Bạn sẽ phải sử dụng IIS.

20

Không, bạn không thể. Nó được thiết lập để nó chỉ hoạt động trên localhost, và tôi không thể tìm thấy bất kỳ cách giải quyết nào để nó hoạt động.

Nhưng, đây là những gì tôi đã làm - Tôi đã tạo trang web trên một cổng cụ thể trong IIS và mở cổng đó để nó hiển thị trên mạng. Tôi đã chỉ ra rằng trang web IIS vào thư mục gốc của trang web của tôi (thư mục có web.config trong đó). Sau đó, tôi tiếp tục sử dụng máy chủ ASP.NET Development trên máy cục bộ đó trong khi phát triển - cả IIS và ASP.NET Development Server đều có thể truy cập các tập tin cùng một lúc (trừ khi bạn đang làm điều gì đó lập dị).

Hãy cho tôi biết nếu có sự cố khi chạy IIS trên máy của bạn và tôi sẽ cập nhật câu trả lời.

3

Bạn có thể biên dịch lại Cassini để làm cho nó hoạt động - có khá dễ dàng để loại bỏ kiểm tra cho localhost trong đó. Hoặc, tôi khá chắc chắn Ultidev's Cassini không có giới hạn này. Cả hai đều dễ cài đặt hơn IIS.

Nhưng, yeah, WebDev.WebServer được xây dựng không hoạt động .... Hmm, trừ khi bạn chạy một cái gì đó như AnalogX's Proxy trên hộp dev của bạn và trỏ nó vào cổng WebDev. Điều đó sẽ làm việc (mặc dù tôi đã không thử nó, nó sẽ mất < 2 phút để thiết lập).

5

Nope, ngớ ngẩn (IMHO) không có cách nào để có được máy chủ phát triển ASP.net mặc định để phục vụ các trang đến các IP khác với localhost. Những gì tôi đã làm là sử dụng UltiDev Cassini là rất nhanh chóng để thiết lập và về cơ bản là một phiên bản của máy chủ phát triển ASP.net được biên soạn bởi UltiDev, và nó sẽ phục vụ các trang đến bất kỳ địa chỉ IP nào.

3

Bạn có thể sử dụng Cassini để hiển thị ứng dụng web của mình bên ngoài. Bạn chỉ cần ủy quyền kết nối. Tôi đã viết một chương trình đơn giản để làm điều này mà bạn có thể chạy trong một thể hiện VS khác. Chỉ cần thay đổi cổng để phù hợp với cổng Cassini đang sử dụng.

https://gist.github.com/945649

+0

Điều này không có tác dụng đối với tôi, chỉ để xác nhận số cổng cần thay đổi là 1374? – samaspin

2

Bạn có thể làm cổng chuyển hướng sử dụng SOAP Toolkit 3.0

Sau khi cài đặt, vào Programs của tôi> Microsoft xà phòng Toolkit 3> Dấu vết Utility

Khi vết Utility mở ra, hãy vào File> New> Đã định dạng Dấu vết

Trong hộp thoại chèn cổng Máy chủ phát triển ASP .NET của bạn vào trường Chuyển tiếp đến đích.

Đó chỉ là một cách giải quyết cho mục đích thử nghiệm

+0

Bạn có thể vui lòng cung cấp thêm thông tin? Tôi đã làm chính xác như bạn đề nghị, bây giờ tôi phải làm gì? 10.0.0.3:8080 từ một mạng nội bộ comp không hoạt động – Guy

1

Biên dịch tất cả trang web của bạn ở chế độ Gỡ lỗi, sau đó tạo trang web và xuất bản nó trong IIS (đảm bảo bạn có thể xem nó từ máy khác). Sau đó đính kèm Debugger VS2010 vào tiến trình với AppPool của trang web của bạn (quá trình này được gọi là w3wp.exe khi IIS> v5 và aspnet_wp.exe khi IIS < 5).

Nếu bạn thực hiện một số thay đổi, chỉ cần thay thế nội dung gói trên đường dẫn vật lý của trang web và bạn sẽ quay lại một lần nữa.

+0

Không cần phải xin lỗi vì đã đăng câu trả lời trễ, đó là tất cả những gì về trang web này! Tuy nhiên, tôi không thấy câu trả lời của bạn liên quan đến câu hỏi như thế nào. Điểm của câu hỏi này là cụ thể về cách sử dụng máy chủ phát triển - tức là cách ** không ** sử dụng IIS. –

+0

Điều tôi đang cố gắng chỉ ra ở đây là một cách để gỡ lỗi ứng dụng ASP bằng IIS thực ... bạn không thể bắt chước hành vi thực sự của ứng dụng web trong máy chủ phát triển ... nhưng nếu bạn sử dụng IIS đầy đủ , bạn có thể gửi mọi thứ đến máy chủ, bắt chước bài đăng và nhận, v.v. ... đó là quan điểm của tôi và tôi nghĩ câu trả lời này phù hợp ở đây ... là một cách thay thế để "gỡ lỗi ứng dụng ASP" – gvelasquez85

4

Chỉ cần cho những ai không muốn/không thể thiết lập IIS vì lý do gì ...

Sử dụng cáy hoặc tương tự trên máy chủ của bạn - thiết lập trình duyệt của bạn trên máy khách VM để sử dụng proxy sau đó chỉ cần sử dụng localhost : dev_port như thường lệ trên máy khách.

Tất cả các yêu cầu từ máy khách goto proxy trên máy dev của bạn mà tuyến đường đến localhost trên máy dev và máy chủ dev.net dev nghĩ rằng yêu cầu là từ máy dev của bạn!

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