Cách sử dụng ipad để truy cập máy chủ web trên macbook air


8

phần mềm máy chủ web của tôi là nginx chạy rất tốt trên macbook air sử dụng mac os x 10.7.5

Khi tôi truy cập http: //myapp.localhost trên macbook air, tôi có thể truy cập trang web của mình một cách hoàn hảo đang chạy trên localhost.

Làm thế nào tôi có thể truy cập trang web từ iPad của tôi? Tôi hỏi vì tôi muốn kiểm tra xem trang web của tôi có cho phép máy tính bảng truy cập tốt như vậy trên trình duyệt máy tính để bàn không.

tôi có hai thiết lập có thể.

1) macbook air chạy HUAWEI-MOBILEModem và sử dụng INTERNET SHARING để cho phép iPad truy cập.

2) khi cả macbook air và iPad đều truy cập cùng một kết nối WIFI.

Vui lòng cung cấp giải pháp cho cả hai kịch bản.

CẬP NHẬT: tôi có nhiều hơn 1 ứng dụng đang chạy trên máy chủ web nginx macbook air của tôi.

để thuận tiện, hãy gọi cho họ

Vân vân.

Làm cách nào iPad của tôi có thể truy cập đúng ứng dụng web được lưu trữ trên macbook air của tôi?

CẬP NHẬT

trên macbook air của tôi, tôi truy cập các ứng dụng web khác nhau vì tôi đã chỉnh sửa tệp / etc / hosts của mình.


1
Bạn có mở các giải pháp cho phép bạn sử dụng các cổng / nhiều nginx khác nhau để cô lập các ứng dụng web hay bạn thực sự cần một phiên bản và chỉ phải cách ly mọi thứ bằng URL. Tôi đã rất may mắn khi quá tải NIC để có nhiều địa chỉ IP và sử dụng xip.io để giải quyết các địa chỉ cục bộ thông thường không thể định tuyến.
bmike

tôi không ngại nghe ý tưởng đó, @bmike
Kim Stacks

Câu trả lời:


3

Trong cả hai trường hợp , sử dụng địa chỉ IP hoặc machinename.local của Mac sẽ chỉ cung cấp cho bạn trang web mặc định trên máy Mac đó. Tất cả các ứng dụng web của bạn đều ở cấp cao nhất, vì vậy Nginx đang mong đợi các tên máy chủ khác nhau trong yêu cầu. Vấn đề là, các tên máy chủ này kết thúc bằng .localhost không được DNS giải quyết, vì vậy iPad không biết myapp2.localhost ở đâu và yêu cầu không bao giờ đến được Nginx trên máy Mac.

Bạn đã gặp phải vấn đề này bằng cách nào đó khi thử nghiệm từ Mac. Có lẽ bạn đã chỉnh sửa tệp / etc / hosts hoặc bạn có GUI làm điều đó? Tuy nhiên, bạn không thể sửa đổi tệp máy chủ iPad mà không cần bẻ khóa.

Một cách giải quyết đơn giản là thay đổi trang web mặc định trong Nginx thành ứng dụng web bạn muốn kiểm tra từ iPad - sau đó bạn có thể sử dụng địa chỉ machinename.local từ iPad. Nhưng bạn phải thay đổi điều này mỗi khi bạn muốn thử nghiệm một ứng dụng web khác nhau.

Các cách giải quyết phức tạp hơn sẽ là a) cấu hình Apache trên máy Mac làm máy chủ proxy và định cấu hình trình duyệt iPad để sử dụng làm proxy của nó; b) thiết lập máy chủ DNS trên mạng cục bộ của bạn; c) sử dụng thay thế trình giả lập iPad trên máy Mac, đồng thời sửa đổi tệp / etc / hosts; hoặc d) bẻ khóa iPad và sửa đổi / etc / hosts.


1
Sử dụng iPad với Proxy Server: stackoverflow.com/questions/6917107/ từ
wrk2bike

tôi không muốn bẻ khóa hoặc sử dụng trình giả lập. tôi cần phải dễ dàng kiểm tra nhiều ứng dụng. vì vậy tôi còn lại với tùy chọn này theo đề nghị của bạn. stackoverflow.com/a/11757977/80353
Kim Stacks

Tuy nhiên, tôi có một vấn đề. Tôi đặt ipad để sử dụng hướng dẫn proxy với địa chỉ IP của macbook của tôi và cổng tôi sử dụng 80. nhưng tôi vẫn không thể truy cập myapp1.localhost
Kim Stacks

oh xin lỗi tôi chỉ nhận ra rằng tôi cần phải bật charles của mình và sau đó đặt cổng thành 8888
Kim Stacks

Tôi chỉ muốn thêm rằng giải pháp cá nhân của tôi là cài đặt charles và sau đó sử dụng charles trên macbook air của tôi. Trong iPad, tôi sẽ bật proxy http thủ công.
Kim Stacks

3

localhost là dành riêng cho thiết bị, vì vậy việc truy cập nó trên iPad sẽ đưa bạn đến một trang trên chính iPad của mình (điều đó có thể không tồn tại).

Để truy cập một trang được phục vụ từ máy Mac của bạn từ iPad, hãy sử dụng địa chỉ IP cục bộ của máy Mac thay vì localhost. Để lấy IP cục bộ của máy Mac, hãy mở ngăn Mạng của Tùy chọn hệ thống. Chọn mạng hoạt động của bạn ở bên trái và IP sẽ được hiển thị ở bên phải dưới tiêu đề được kết nối . Nó có thể sẽ là một cái gì đó trông giống như 10.0.1.1hoặc 127.0.1.1.


Có cách nào để tôi gán tên máy cụ thể cho macbook air và sau đó iPad có thể tra cứu qua tên máy không?
Kim Stacks

Tôi đã chỉnh sửa câu hỏi ban đầu của tôi một chút. Tôi quên đề cập đến việc tôi có nhiều ứng dụng web được lưu trữ trong máy chủ web trên macbook air của tôi. Làm thế nào điều này sẽ thay đổi câu trả lời của bạn?
Kim Stacks

@kimsia Có, bạn có thể thay thế IP bằng computerName.local. Xem câu trả lời này . Nhiều ứng dụng không thay đổi câu trả lời, chỉ cần làm những gì bạn làm bình thường và thay thế localhostbằng IP. Vì vậy, nếu bạn thường đi đến http://localhost:8888/someApp/index.html, đi đến http://IPAddress:8888/someApp/index.htmlđâu IPAddresslà IP cục bộ.
Nathan Greenstein

tôi thường truy cập myapp1.localhost để truy cập application1 và myapp2.localhost để truy cập application2. Vậy làm thế nào để nó hoạt động để truy cập từ iPad?
Kim Stacks

và tôi cũng không chắc liệu đề xuất của bạn là cho kịch bản 1 hay 2. hoặc cả hai?
Kim Stacks

2

Bạn có thể thử nhập tên máy chủ của Mac theo sau .local.

Vì vậy, nếu tên của máy tính của bạn là epsilon.

    http://epsilon.local

Như tuyên bố của Nathan, địa chỉ IP sẽ hoạt động. Thay thế IP mẫu của tôi bằng IP thực tế của bạn.

    http://192.168.1.1

Bạn sẽ thêm thông tin ứng dụng cụ thể của bạn vào cuối các địa chỉ này. Vì vậy, những gì xuất hiện sau http: // localhost sẽ được thêm vào cuối các URL này.


không làm việc cho tôi. tôi không chắc tại sao. bất cứ điều gì khác tôi có thể thử?
Kim Stacks

và tôi cũng không chắc liệu đề xuất của bạn là cho kịch bản 1 hay 2. hoặc cả hai?
Kim Stacks

Đây là công việc, hãy chắc chắn sử dụng địa chỉ http và địa chỉ IP
GusDeCooL

-1

Tôi nghĩ rằng điều dễ nhất để làm là lấy địa chỉ IP của máy chủ. Ví dụ, trên dòng lệnh chạy này:

curl icanhazip.com

Bạn sẽ nhận được địa chỉ IP bên ngoài {được mô tả bên dưới là $ IP_ADDRESS}.

Sau đó, trên iPad của bạn chỉ cần trỏ trình duyệt đến địa chỉ IP đó:

http://$IP_ADDRESS/

Làm thế nào để làm xoăn trong ipad? Hehehe
GusDeCooL

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.