একটি সম্ভাব্য দৃশ্য:
কখনও কখনও এটি ঘটতে পারে যে, ভার্চুয়ালহোস্ট যা কনফিগার করা হচ্ছে তার জন্য এসএসএল ফাইলগুলি (ব্যক্তিগত কী এবং শংসাপত্র) কনফিগার করার সময়, এই ফাইলগুলি কোথায় থাকে তার নিখুঁত পথ নির্দিষ্ট করতে ভুলে গিয়েছিল।
উদাহরণস্বরূপ, আপনি যদি Nginx থেকে এই অফিশিয়াল ডক অনুসরণ করেন: http://nginx.org/en/docs/http/configuring_https_servers.html
server {
listen 443 ssl;
server_name www.example.com;
ssl_certificate tdmssl.crt;
ssl_certificate_key tdmssl.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
...
}
মনে করুন যে আপনি " /etc/nginx/conf.d " এর ভিতরে এসএসএল ফাইলগুলি সঞ্চয় করেছেন :
root@ilg40:/etc/nginx/conf.d# pwd
/etc/nginx/conf.d
root@ilg40:/etc/nginx/conf.d# ll
total 16
drwxr-xr-x 2 root root 4096 Jan 24 17:39 ./
drwxr-xr-x 5 root root 4096 Jan 24 21:15 ../
-rw-r--r-- 1 root root 1359 Jan 24 17:39 tdmssl.crt
-rw-r--r-- 1 root root 1675 Jan 24 17:39 tdmssl.key
কি ঘটেছে?
ডিফল্টরূপে, যখন Nginx দ্বারা ব্যবহৃত একটি সাধারণ ফাইলের জন্য নিখুঁত পথ নির্দিষ্ট না করা হয়, Nginx "/ etc / nginx" এ ফাইলগুলি অনুসন্ধান করবে
/Var/log/nginx/error.log থেকে
2017/01/24 21:05:10 [emerg] 13113#0:
BIO_new_file("/etc/nginx/tdmssl.crt")
failed(SSL:error:02001002:system library:fopen:
No such file or directory:fopen('/etc/nginx/tdmssl.crt','r')
error:2006D080:BIO routines:BIO_new_file:no such file)
কি করা উচিত?
আপনার ভার্চুয়ালহস্ট কনফিগারেশন দ্বারা ব্যবহৃত অতিরিক্ত ফাইলগুলির নিখুঁত পথ নির্দিষ্ট করতে।
এটার মত:
root@ilg40:/etc/nginx/conf.d# cd
root@ilg40:~# cat /etc/nginx/sites-available/tdm
server {
listen 443 ssl;
server_name tjsdatamanager.redtjs.com;
ssl_certificate /etc/nginx/conf.d/tdmssl.crt;
ssl_certificate_key /etc/nginx/conf.d/tdmssl.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
include proxy_params;
proxy_pass http://unix:/etc/tdm/flask/wsgi.sock;
}
}
path/to/cert.pem
অবশ্যই না একটি বৈধ অবস্থান।