Tôi đang cố truy cập máy chủ Django của mình từ một máy tính khác trên cùng một mạng. Tôi đã thiết lập máy chủ của mình và có thể xem mọi thứ chính xác bằng cách sử dụng python manage.py runserver
và chuyển đến http://127.0.0.1:8000
nhưng khi tôi cố gắng sử dụng python manage.py runserver 0.0.0.0:80
, tôi không thể xem trang Django của mình từ một máy tính khác. Máy tính lưu trữ máy chủ Django có mạng nội bộ IP 192.168.1.146. Trên máy tính phụ của tôi, tôi khởi động trình duyệt và thử truy cập http://192.168.1.146:80
để không có kết quả. Tôi cũng đã chuyển tiếp cổng 80 (và tôi cũng đã cố gắng 8000) cũng không có kết quả: (HELP!Django 0.0.0.0:80; không thể truy cập từ xa
Trả lời
Tôi có cùng một câu hỏi trên máy tính Windows và bắt đầu máy chủ Django với python manage.py runserver 192.168.1.146:80
, thay vì 0.0.0.0. (Tôi đã sử dụng một địa chỉ IP khác nhau của khóa học).
Sau đó, hộp thoại Tường lửa Windows xuất hiện và hỏi xem tôi có nên mở khóa cổng (có) hay không. Các máy tính khác trong mạng LAN sau đó có thể truy cập máy chủ Django bằng cách sử dụng 192.168.1.146:80.
Nghe có vẻ như đó là sự cố tường lửa. Bạn có chắc chắn mở cổng 80 trên máy chủ của mình không.
Từ đề cập đến cổng chuyển tiếp 80, có vẻ như máy tính thứ hai của bạn đang ở trên một mạng khác (bộ định tuyến) từ mạng đang chạy Django. Trong trường hợp đó, bạn nên duyệt đến IP của bộ định tuyến của mạng Django - địa chỉ 192.168 chỉ hiển thị từ phía sau bộ định tuyến đó và cổng chuyển tiếp sẽ đảm bảo rằng yêu cầu của bạn được chuyển đến đúng máy.
hệ điều hành nào bạn đang chạy trên? bạn đã thử cung cấp các đặc quyền root của lệnh chưa? (Giả sử bạn đang chạy nó trên ubuntu/linux)
thử chạy này thay vì:
sudo python manage.py runserver 0.0.0.0:80
Theo như tôi hiểu, 0.0.0.0 là một IP tuyến và không phục.
Nó sẽ chỉ hoạt động trên máy cục bộ, nếu bạn gắn một ổ cắm vào địa chỉ.
Thực ra '0.0.0.0' có nghĩa là mọi IP có thể. Nó thực sự không thể định tuyến được, nhưng có ý nghĩa đặc biệt này. –
0.0.0.0 có nghĩa là ràng buộc trên tất cả các giao diện. Vì vậy, tại địa phương nó sẽ liên kết với 127.0.0.1, và nó sẽ ràng buộc với bất kỳ giao diện trên bất kỳ thẻ. Nó cũng là một lựa chọn tốt nếu bạn đằng sau một NAT với các cổng chuyển tiếp NAT cho nó, như django wont nhầm lẫn về lý do tại sao nó được giải quyết với IP sai – Shayne
Để nó hoạt động được, tôi chạy sudo python manage.py runserver 0.0.0.0:80
trong thiết bị đầu cuối (Mac OS X 10.8.2), sau đó trong trình duyệt ipad (hoặc iphone), hãy truy cập http://[your địa chỉ IP] /. Tôi không phải làm điều này: Testing Django website on iphone
Khi chạy nó từ Ubuntu, nó nói cho phép từ chối khi tôi đã cố gắng để làm điều này:
python manage.py runserver 0.0.0.0:80
Vì nó là một phép vấn đề sau đây hoạt động tốt như Ryan và gtujan nói.
sudo python manage.py runserver 0.0.0.0:80
LƯU Ý: mà bạn đang chạy một máy chủ trên cổng 80, mà là một cổng HTTP. Vì vậy, khi nhập URL từ trình duyệt web của bạn, bạn không nhất thiết phải nhập ": 80" vào URL của mình.
http://192.168.1.146:80/
Sau đây là đủ. Ngay cả khi bạn gõ ": 80" thì cũng được coi là giống nhau.
http://192.168.1.146/
Tuy nhiên, đối với các số cổng khác như 8000, 8000, bắt buộc phải là một phần của URL.
- 1. Truy cập TEAMCITY từ máy từ xa
- 2. Truy cập máy chủ MBean từ xa
- 3. trang web truy cập IIS7 từ máy tính từ xa
- 4. Không thể truy cập phiên bản SQL Server 2008 R2 từ xa
- 5. Mysql thêm người dùng để truy cập từ xa
- 6. Truy cập từ xa vào Team Foundation Server 2010
- 7. Truy cập CouchDB Futon trên máy chủ từ xa
- 8. Truy cập từ xa với Powershell và Jenkins
- 9. Xác thực WCF cho IPC và Truy cập từ xa
- 10. Tôi có thể truy cập các giá trị khóa cụ thể trong từ điển từ mẫu django không?
- 11. django cho ngắt truy cập vòng lặp
- 12. django OneToOne truy cập ngược
- 13. cách truy cập phần tử từ điển trong mẫu django?
- 14. Truy cập Django devserver từ một máy khác cùng mạng
- 15. Lỗi khi truy cập vỏ sqlite3 từ ứng dụng django
- 16. Truy cập vào mẫu Django {{Variable}} từ JavaScript
- 17. Truy cập từ chối đọc bộ đếm Perfmon từ máy từ xa (Asp.Net)
- 18. ColdFusion CFC có an toàn khi truy cập từ xa không?
- 19. Truy cập typedef từ cá thể
- 20. .dll không thể truy cập
- 21. Làm thế nào để kiểm tra xem một hệ thống từ xa có thể truy cập được không
- 22. Truy cập HDFS từ máy chủ từ xa thông qua API Java, xác thực người dùng
- 23. Tôi có thể truy cập cookie từ Socket.io không?
- 24. Không thể truy cập localhost từ thiết bị Android
- 25. NodeJS máy chủ không thể truy cập từ bên ngoài
- 26. Có thể truy cập ipython từ mã không?
- 27. Truy cập vô danh từ xa vào kho lưu trữ bị từ chối?
- 28. Truy cập các đối tượng COM trên một hộp khác từ .NET (không có DCOM không dùng nữa, từ xa)
- 29. Không thể CURL một tệp từ xa
- 30. Django truy cập dữ liệu định dạng
đây thực sự là vấn đề của tôi. Đối với người dùng Linux, bạn cần phải cho phép cổng 8000 hoặc bất kỳ cổng nào bạn đang phục vụ khi sử dụng lệnh như 'sudo ufw cho phép 8000/tcp' – oat
@tao Điều đó giải quyết được vấn đề của tôi. Cảm ơn. –
@tao Cảm ơn. bạn nên đăng bài đó như một câu trả lời. –