Rumah >pembangunan bahagian belakang >Tutorial Python >Mendedahkan Projek Django Anda ke Internet Menggunakan Ngrok
Pernahkah anda menghadapi ralat ini semasa membangun di Django?
You're accessing the development server over HTTPS, but it only supports HTTP.
Jika anda biasa mengakses pelayan pembangunan anda melalui http://localhost:8000, ralat ini boleh mengecewakan - terutamanya selepas mengemas kini peraturan tembok api yang menguatkuasakan sambungan HTTPS. Daripada mengembalikan tetapan keselamatan, terdapat penyelesaian yang lebih baik: Ngrok.
Ngrok ialah alat berkuasa yang mendedahkan aplikasi tempatan kepada internet tanpa konfigurasi rangkaian yang kompleks seperti pemajuan port atau persediaan DNS. Baca lebih lanjut tentang ngrok dalam dokumentasi rasmi mereka.
Sebelum kami bermula, pastikan anda mempunyai:
Sebelum kami memasang apa-apa, aktifkan persekitaran maya anda kemudian pasang pembungkus Python untuk ngrok:
pip install pyngrok pip freeze > requirements.txt
Tambahkan domain ngrok pada senarai hos anda yang dibenarkan dalam tetapan projek anda.py:
# settings.py ALLOWED_HOSTS = ['localhost', '127.0.0.1', '.ngrok-free.app']
Ini membolehkan Django menerima permintaan daripada URL dinamik ngrok (*.ngrok-free.app). Django tidak akan menjana sebarang ralat walaupun kami tidak dapat meramalkan bahagian rentetan rawak URL.
Dalam direktori akar projek anda:
python manage.py runserver
Nota: Pengguna Windows boleh menggunakan py manage.py runserver
ngrok config add-authtoken YOUR_TOKEN_HERE
Mulakan terowong:
ngrok http 8000
Pastikan port pelayan ngrok dan Django adalah sama. Port lalai biasanya ialah 8000.
Anda sepatutnya melihat output yang serupa dengan:
Account Your Name (Plan: Free) Version 3.19.0 Region United States (us) Latency Your Latency Web Interface An Unsecure HTTP address Forwarding https://[random-id].ngrok-free.app -> http://localhost:8000
Akses aplikasi Django anda hanya menggunakan URL HTTPS yang disediakan oleh ngrok pada tetingkap konsol anda. Ia akan kelihatan serupa dengan yang berikut:
https://[random-id].ngrok-free.app
Ngrok bukan sahaja untuk menyelesaikan isu HTTPS. Ia berharga untuk:
Ingin mengetahui lebih lanjut tentang pembangunan web? Lihat artikel saya yang lain:
Terima kasih atas masa anda dan pengekodan selamat! Kongsi projek anda di bahagian komen.
Atas ialah kandungan terperinci Mendedahkan Projek Django Anda ke Internet Menggunakan Ngrok. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!