গোল:
আমি একটি এনজিআইএনএক্স কনটেইনার ব্যবহার করছি যেখানে আমি একটি দূরবর্তী এসএসএফএফএস ফাইল সিস্টেমটিকে / usr / share / nginx / html এ মাউন্ট করি , উদ্দেশ্য প্রতিটি সময় একটি নতুন স্টেটলেস এনগিনেক্স ধারক ব্যবহার করা কিন্তু একই ধ্রুবক সামগ্রী সহ।
সম্পাদিত পদক্ষেপগুলি:
নিশ্চিত করুন যে এসএসএইচএফএস সার্ভারটি চালু এবং চলছে।
-নিগিনেক্স পাত্রে (sshfs ক্লায়েন্ট) আমি রিমোট sshfs ফাইল সিস্টেমটিকে / usr / share / nginx / html এ স্থাপন করেছি
/ # sshfs root@X.X.106.181:/data /usr/share/nginx/html
root@X.X.106.181's password: / #
- মাউন্টটি ঠিক দেখাচ্ছে:
/ # mount | grep sshfs
root@35.185.106.181:/data on /usr/share/nginx/html type fuse.sshfs
(rw,nosuid,nodev,relatime,user_id=0,group_id=0)
/ # df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 886G 681G 161G 81% /
none 886G 681G 161G 81% /
tmpfs 7.9G 0 7.9G 0% /dev
tmpfs 7.9G 0 7.9G 0% /sys/fs/cgroup
/dev/sda1 886G 681G 161G 81% /gns3
shm 64M 0 64M 0% /dev/shm
root@X.X.106.181:/data 976M 2.6M 907M 1% /usr/share/nginx/html
সেখানে কয়েকটি ফাইল রাখুন এবং সেগুলি প্রত্যেকের দ্বারা পঠনযোগ্য:
/ # ls -la /usr/share/nginx/html
total 36 drwxr-xr-x 1 root root 4096 Aug 20 11:48 . drwxr-xr-x 5 root
root 4096 Aug 20 11:36 ..
-rw-r--r-- 1 root root 537 Aug 20 11:48 50x.html
-rw-r--r-- 1 root root 612 Aug 20 11:48 index.html
drwx------ 1 root root 16384 Aug 20 11:23 lost+found
-rw-r--r-- 1 root root 310 Aug 20 11:48 test.php
প্রত্যাশিত ফল:
নতুন এনগিনেক্স ধারক যাই হোক না কেন, আমি রিমোট এসএসএইচএফসকে মাউন্ট করি এবং আমার ব্যবহারকারীর দ্বারা ব্রাউজ করা একই তথ্য রয়েছে।
প্রাপ্ত ফলাফল:
এনগিনেক্স / ইউএসআর / শেয়ার / এনগিনেক্স / এইচটিএমএল এর সামগ্রী পড়বে না। কোনও সূচী ফাইল না থাকায় এটি কাজ করে।
ব্রাউজারে কিছুই দেখা যাচ্ছে না:
লিনাক্স লগ:
/ # tail /var/log/nginx/error.log
2017/08/20 15:47:16 [crit] 139#0: *3 stat() "/usr/share/nginx/html/" failed (13: Permission denied), client: 192.168.122.247, server: ajnouri.local, request: "GET / HTTP/1.1", host: "192.168.122.100"
2017/08/20 15:47:16 [crit] 139#0: *3 stat() "/usr/share/nginx/html/404.html" failed (13: Permission denied), client: 192.168.122.247, server: ajnouri.local, request: "GET / HTTP/1.1", host: "192.168.122.100"
2017/08/20 15:47:16 [crit] 139#0: *3 stat() "/usr/share/nginx/html/404.html" failed (13: Permission denied), client: 192.168.122.247, server: ajnouri.local, request: "GET / HTTP/1.1", host: "192.168.122.100"
দেখে মনে হচ্ছে "www-data" ডিরেক্টরিতে লিখতে হবে।
####################### হালনাগাদ
সুতরাং, সার্ভারে এটি নিয়মিত ব্যবহারকারী হিসাবে "www-ডেটা" ব্যবহারকারী তৈরি করতে সক্ষম হয়েছিল এবং sshfs ক্লায়েন্ট "www-ডেটা" ব্যবহার করে "/ var / www" মাউন্ট করতে সফল হয়েছিল
সার্ভারে আমি "www-ডেটা" হোম ডিরেক্টরি (/ var / www) এর মালিককে www-ডেটাতে পরিবর্তন করেছি: www-ডেটা
/ # ডোবা -আর www-ডেটা: www-ডেটা / ভের / www
/ # ls -la /var/www
total 36
drwxr-xr-x 1 www-data www-data 4096 Aug 20 11:48 .
drwxr-xr-x 5 root root 4096 Aug 20 11:36 ..
-rw-r--r-- 1 www-data www-data 537 Aug 20 11:48 50x.html
-rw-r--r-- 1 www-data www-data 612 Aug 20 11:48 index.html
drwx------ 1 www-data www-data 16384 Aug 20 11:23 lost+found
-rw-r--r-- 1 www-data www-data 310 Aug 20 11:48 test.php
######################
সমস্যাটি সমাধান করার বিষয়টি মনে হচ্ছে না।
Nginx ধারক (sshfs ক্লায়েন্ট) এবং sshfs সার্ভার একই ওএস ব্যবহার করে:
/ # lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty