উপরের উত্তরগুলি আংশিক ছিল। আমি এই কাজ পেতে অনেক সময় ব্যয় করেছি, এটি উন্মাদ। আমার ভবিষ্যতের স্বরে নোট করুন, আপনার যা করা দরকার তা এখানে:
আমি ক্রোম 65 এর সাথে উইন্ডোজ 10-এ কাজ করছি Firef ফায়ারফক্স ভাল আচরণ করছে - কেবলমাত্র স্থানীয় হোস্টকে সুরক্ষা ব্যতিক্রম হিসাবে নিশ্চিত করুন এবং এটি কার্যকর হবে। ক্রোম তা করে না:
পদক্ষেপ 1. আপনার ব্যাকএন্ডে, বলা একটি ফোল্ডার তৈরি করুন security
। আমরা এটি ভিতরে কাজ করবে।
পদক্ষেপ 2.req.cnf
নিম্নলিখিত বিষয়বস্তু সহ একটি অনুরোধ কনফিগারেশন ফাইল তৈরি করুন (ক্রেডিট যায়: @ আনশুল )
req.cnf:
[req]
distinguished_name = req_distinguished_name
x509_extensions = v3_req
prompt = no
[req_distinguished_name]
C = Country initials like US, RO, GE
ST = State
L = Location
O = Organization Name
OU = Organizational Unit
CN = www.localhost.com
[v3_req]
keyUsage = critical, digitalSignature, keyAgreement
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1 = www.localhost.com
DNS.2 = localhost.com
DNS.3 = localhost
এই ক্ষেত্রগুলির একটি ব্যাখ্যা এখানে ।
পদক্ষেপ 3. টার্মিনালের সুরক্ষা ফোল্ডারে নেভিগেট করুন এবং নিম্নলিখিত কমান্ডটি টাইপ করুন:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout cert.key -out cert.pem -config req.cnf -sha256
পদক্ষেপ ৪. তারপরে security
ফোল্ডারের বাইরে আপনার এক্সপ্রেস অ্যাপ্লিকেশনটিতে এরকম কিছু করুন: (ক্রেডিট @ ডিয়েগো মেলোর কাছে যায়)
backend
/security
/server.js
server.js:
const express = require('express')
const app = express()
const https = require('https')
const fs = require('fs')
const port = 3000
app.get('/', (req, res) => {
res.send("IT'S WORKING!")
})
const httpsOptions = {
key: fs.readFileSync('./security/cert.key'),
cert: fs.readFileSync('./security/cert.pem')
}
const server = https.createServer(httpsOptions, app)
.listen(port, () => {
console.log('server running at ' + port)
})
পদক্ষেপ 5. সার্ভারটি শুরু করুন node server.js
, এবং https: // লোকালহোস্ট: 3000 এ যান ।
এই মুহুর্তে আমাদের সার্ভার সেটআপ আছে। তবে ব্রাউজারটি একটি সতর্কতা বার্তা প্রদর্শন করা উচিত।
ক্রোম / উইন্ডোজ শংসাপত্রের দোকানে সিএ বিশ্বস্ত শংসাপত্র কর্তৃপক্ষ হিসাবে আমাদের স্ব-স্বাক্ষরিত শংসাপত্রটি আমাদের নিবন্ধিত করতে হবে। (ক্রোম এটি উইন্ডোতেও সংরক্ষণ করে,)
পদক্ষেপ ch. ক্রোমে দেব সরঞ্জামগুলি খুলুন, সুরক্ষা প্যানেলে যান, তারপরে দেখুন শংসাপত্রের উপর ক্লিক করুন।
পদক্ষেপ Details. বিশদ প্যানেলে যান, ফাইল অনুলিপি করুন ক্লিক করুন, তারপরে শংসাপত্র এক্সপোর্ট উইজার্ড প্রদর্শিত হবে, নীচের মত পরবর্তী ক্লিক করুন:
পদক্ষেপ ৮. ডিইআর এনকোডিং ছেড়ে যান, তারপরে ক্লিক করুন, পছন্দ করুন Browse
, এটিকে ডেস্কটপের মতো অ্যাক্সেসের ফোল্ডারে রাখুন এবং শংসাপত্রটির নাম দিনlocalhost.cer, then click Save and then Finish.
। আপনি ডেস্কটপে আপনার শংসাপত্রটি দেখতে সক্ষম হবেন।
পদক্ষেপ 9.chrome://settings/
এটি ইউআরএল বাক্সে প্রবেশ করে খুলুন । নীচে নীচে, ক্লিক করুন Advanced / Advanced Options
, তারপরে সন্ধান করতে নীচে স্ক্রোল করুন Manage Certificates
।
পদক্ষেপ 10. বিশ্বস্ত রুট শংসাপত্র কর্তৃপক্ষ প্যানেলে যান, এবং আমদানি ক্লিক করুন।
আমরা localhost.cer
সবেমাত্র 8 ম রফতানি শেষ করে শংসাপত্র আমদানি করব ।
পদক্ষেপ ১১। ব্রাউজ ক্লিক করুন, সন্ধান করুন localhost.cer
, ডিফল্ট মানগুলি ছেড়ে দিন কয়েকবার ক্লিক করুন - এই সতর্কতাটি উপস্থিত না হওয়া পর্যন্ত হ্যাঁ ক্লিক করুন।
পদক্ষেপ 12. সমস্ত কিছু বন্ধ করুন এবং ক্রোম পুনরায় চালু করুন। তারপরে, https://localhost:3000
আপনার কাছে যাওয়ার সময় দেখতে হবে: