Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >nodejs hanya membuka port akses tempatan

nodejs hanya membuka port akses tempatan

WBOY
WBOYasal
2023-05-28 13:04:38694semak imbas

Node.js membenarkan pembangun menulis kod sisi pelayan menggunakan JavaScript. Dalam persekitaran ini, kami boleh membangunkan aplikasi web dengan mudah dan menjadikannya berjalan pada pelayan. Semasa pembangunan atau penyahpepijatan, selalunya perlu menjalankan beberapa perkhidmatan untuk mendengar port dan mengendalikan permintaan daripada pelanggan Walau bagaimanapun, dalam beberapa kes, ia hanya perlu untuk membenarkan perkhidmatan diakses secara tempatan sahaja tanpa membuka port akses rangkaian awam. Hari ini, kami akan meneroka cara membuka port untuk perkhidmatan Node.js secara tempatan sahaja.

Mengapa menyekat akses tempatan sahaja?

Dalam keadaan biasa, perkhidmatan yang dijalankan pada pelayan harus menyediakan antara muka akses awam supaya pelanggan boleh mengaksesnya. Walau bagaimanapun, semasa pembangunan dan penyahpepijatan, kami selalunya perlu menjalankan beberapa perkhidmatan untuk menyediakan beberapa fungsi tertentu, dan perkhidmatan tersebut tidak perlu boleh diakses oleh orang ramai. Oleh itu, kadangkala perkhidmatan itu perlu dijalankan dalam perkhidmatan tempatan sahaja.

Menambahkan beberapa keselamatan tambahan dengan berkesan apabila hanya membenarkan akses tempatan. Kerana jika perkhidmatan hanya berjalan secara tempatan, hanya mereka yang mempunyai akses tempatan akan dapat mengakses perkhidmatan tersebut. Ia juga mengelakkan isu keselamatan jika perkhidmatan itu diakses secara terbuka secara tidak sengaja.

Bagaimana untuk mendayakan akses tempatan sahaja?

Untuk memulakan perkhidmatan Node.js secara tempatan sahaja, terdapat beberapa kaedah untuk dipilih. Berikut ialah dua daripadanya:

Pilihan 1: Gunakan 127.0.0.1

127.0.0.1 ialah alamat IP khas yang dipanggil localhost atau alamat gelung balik. Ia adalah salah satu kaedah komunikasi antara aplikasi rangkaian yang berjalan pada komputer yang sama.

Jika anda mahu menggunakan akses tempatan sahaja, ikat perkhidmatan ke port di alamat tersebut. Terdapat dua cara untuk mengikat port secara setempat menggunakan Node.js:

Melalui kod

Gunakan pernyataan berikut dalam kod untuk mengikat aplikasi anda kepada 127.0.0.1:

app.listen(3000, '127.0.0.1');

Pada ketika ini, aplikasi anda akan terikat kepada alamat IP tempatan 127.0.0.1 dan port 3000. Ini akan menghalang komputer atau peranti lain daripada mengakses perkhidmatan dalam aplikasi anda melalui rangkaian awam.

Melalui parameter baris arahan

Anda juga boleh menentukan alamat IP pada baris arahan. Ikat aplikasi kepada 127.0.0.1 menggunakan arahan berikut:

node app.js --host=127.0.0.1 --port=3000

Selepas menjalankan arahan, aplikasi akan mengikat alamat IP tempatan 127.0.0.1 dan port 3000.

Pilihan 2: Gunakan localhost

Kaedah lain ialah menggunakan localhost. localhost ialah nama pada komputer tempatan yang merujuk kepada komputer itu sendiri. Sama seperti 127.0.0.1, localhost juga merupakan penunjuk kepada alamat gelung balik setempat.

Gunakan localhost dalam kod anda dengan:

app.listen(3000, 'localhost');

Sama seperti 127.0.0.1, localhost juga mengehadkan aplikasi untuk mengakses pada mesin tempatan.

Ringkasan

Semasa pembangunan dan penyahpepijatan, kita harus memberi perhatian yang tinggi kepada keselamatan. Mengehadkan perkhidmatan Node.js kepada akses setempat boleh menambah beberapa perlindungan keselamatan tambahan. Jika anda mengikat port perkhidmatan Node.js ke alamat IP tempatan (127.0.0.1) atau localhost, perkhidmatan tersebut hanya boleh diakses secara setempat. Ini boleh mengurangkan risiko serangan luaran atau akses tanpa kebenaran kepada perkhidmatan dengan ketara.

Atas ialah kandungan terperinci nodejs hanya membuka port akses tempatan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn