ওয়েবসাইটের সামগ্রী সংরক্ষণের জন্য প্রস্তাবিত ডিরেক্টরি কী?


21

আমি যখন ওয়েবে প্রথম প্রোগ্রামিং শুরু করেছি এবং আমি একটি নতুন প্রকল্প তৈরি করতে চেয়েছিলাম তখন আমাকে সর্বদা একটি ডিরেক্টরি তৈরি করতে শেখানো হয়েছিল /var/www/। তবে টিউটোরিয়াল অনেক আমি পড়তে মানুষের মধ্যে একটি সংকলন তৈরি করা ঝোঁক /home/username/

এটি ofোকানোর ধারণাটি আমার পছন্দ নয় /home/username/

একটি সঠিক জায়গা আছে বা না থাকলে ফাইল সিস্টেমে এটি নির্দিষ্ট জায়গায় রাখার সুবিধা / অসুবিধাগুলি কী?


এটি অগ্রাধিকার ("সেরা" বোঝায় যে, সম্ভবত আপনার এটিকে বেশিরভাগ সুরক্ষিত, ইত্যাদি হিসাবে পরিবর্তন করা উচিত) বেশিরভাগ ক্ষেত্রে উন্নয়নের জন্য। আপনি যদি সেখান থেকেও সেগুলি পরিবেশন করছেন, তবে আপনি সম্ভবত নিজের ব্যক্তিগত ফাইল এবং ওয়েব-শেয়ারের স্টাফের মধ্যে কিছুটা দূরত্ব বজায় রাখার জন্য নির্জন কিছু চান। তবে মিলিয়ন কনফিগারেশন রয়েছে। আমি এটির সাথে লেগে আছি /var/wwwএবং সাধারণত এটি অন্য ড্রাইভে থাকে (কেবল পছন্দ)।
নার্ডওয়ালার

কোনও "সেরা" ডিরেক্টরি নেই। এটি সম্পূর্ণরূপে আপনার পারফরম্যান্স কারণ ফাইলগুলির ফিসিসিফিক অবস্থান কোনও বিষয় নয়।
রামহাউন্ড

উত্তর:


36

কোনও "সেরা" ডিরেক্টরি নেই। এবং যখন লোকেরা এই তর্ক করতে পারে যে বিষয়টি বিষয়ভিত্তিক, বা ফাইলগুলির আসল স্থান নির্ধারণ করে না - এবং তারা পরবর্তীকালে সঠিক right সেখানে ইউনিক্সের মতো সিস্টেমে কী রাখবেন সে সম্পর্কে মানসম্মত প্রস্তাবনা রয়েছে।

ফাইলসিস্টেম শ্রেণীক্রম স্ট্যান্ডার্ড এই এবং আপনাকে নিম্নলিখিত অফার করবেঃ

  • /var- সাধারণ অপারেশনের সময় যেমন লগ ইত্যাদির পরিবর্তিত ডেটা স্থাপনের একটি জায়গা /var/wwwহ'ল অ্যাপাচি-তে ওয়েব সামগ্রী স্থাপনের জন্য পূর্বনির্ধারিত ডিরেক্টরি, তবে এর ব্যবহারটি মোটেই মানসম্মত হয় নি এবং কেবল "স্বাভাবিক" জায়গাগুলি কারণ এটি লোকেরা রাখবে কারণ মানুষ খুব প্রায়ই ডিফল্ট সেটিংস পরিবর্তন করবেন না।

  • /srv- এই ডিরেক্টরিতে সিস্টেম দ্বারা পরিবেশন করা ডেটা থাকা উচিত। এটি সাধারণত আপনি চান জায়গা হয়। এফএইচএস ব্যাখ্যা করে:

    এটি নির্দিষ্ট করার মূল উদ্দেশ্যটি যাতে ব্যবহারকারীরা নির্দিষ্ট সেবার জন্য ডেটার অবস্থান নির্ধারণ করতে পারে so এবং যাতে পরিষেবাগুলি কেবলমাত্র পাঠযোগ্য ডেটা, লিখনযোগ্য ডেটা এবং স্ক্রিপ্টগুলির জন্য (যেমন সিজি স্ক্রিপ্টস) প্রয়োজন হয় সেগুলি যথাযথভাবে স্থাপন করা যায়। যে ডেটা কেবলমাত্র একটি নির্দিষ্ট ব্যবহারকারীর পক্ষে আগ্রহী তা ব্যবহারকারীর হোম ডিরেক্টরিতে থাকা উচিত। (...)

    এর অধীনে ডেটা স্ট্রাকচারের জন্য একটি পদ্ধতি /srvহ'ল প্রোটোকল, যেমন। ftp, rsync, www, এবংcvs

    সুতরাং, কেবল একটি /srv/wwwডিরেক্টরি তৈরি করুন এবং এটি ব্যবহার করুন। আপনি আপনার মেশিনের সাথে পরিবেশন করতে চাইতে পারেন এমন প্রতিটি ভার্চুয়াল হোস্টের জন্য সাবফোল্ডার তৈরি করতে পারেন।

  • /homeএমন ফাইল রয়েছে যা সত্যই কেবল একজন ব্যবহারকারীর অন্তর্ভুক্ত। উদাহরণস্বরূপ অ্যাপাচি ব্যবহারকারীর অনুমতি দেয় , যাতে আপনি কোনও ব্যবহারকারীর ওয়েব ফাইল অ্যাক্সেস করতে পারেন http://example.com/~usernameএবং সেগুলি public_htmlব্যবহারকারীর বাড়ির ডিরেক্টরি থেকে পরিবেশন করা হয় ।

    আপনি যদি এমন সার্ভার ব্যবহার করেন যা একাধিক ব্যক্তির মধ্যে ভাগ করা থাকে এবং আপনি প্রত্যেককে তাদের নিজস্ব স্ক্রিপ্টগুলি হোস্ট করার অনুমতি দিতে চান তবে এখান থেকে তাদের যাওয়া উচিত। ডিরেক্টরিগুলি কেবলমাত্র তাদের অন্তর্ভুক্ত ব্যবহারকারীদের দ্বারা লিখনযোগ্য মনে রাখবেন।

সংক্ষেপে /srv/wwwএবং /var/wwwডিরেক্টরিগুলি হ'ল যে কোনও ওয়েব প্রকল্পের জন্য আপনাকে সাব ডাইরেক্টরি তৈরি করতে হবে might তারপরে নির্দিষ্ট ব্যবহারকারী বা ব্যবহারকারী গ্রুপগুলিকে তাদের লেখার অনুমতি দেওয়ার জন্য আপনি এই ডিরেক্টরিগুলিতে বিভিন্ন অনুমতি নির্ধারণ করতে পারেন। আপনার যদি একবারে একজন ব্যবহারকারীর জন্য প্রজেক্ট থাকে তবে ব্যবহার করুন /home


3
http://example.com/~usernameসাধারণত বাতলান করে না /home/username/, কিন্তু /home/username/public_html/
চোরোবা

হ্যাঁ, ধন্যবাদ, এটি পরিষ্কার করার জন্য যুক্ত করা উচিত ছিল। সম্পন্ন.

বেশ কয়েক বছর ব্যবহারের পরেও /var/wwwসময় বদলানোর!
সাইটলিজ

এছাড়াও, wwwআমার কাছে এটি একটি সাবডোমেনের মতো শোনাচ্ছে।
সাইটলিজ

কেবল যোগ করার জন্য ... / var / www এর ব্যবহার একক সাইট পরিবেশনার উদাহরণ হিসাবে যেমন একটি সাধারণ অনুশীলন এবং যেমনটি বলা হয় ডিফল্ট অ্যাপাচি অবস্থান, সেখানে / home / usr / ছিল / রিসেলার বিক্রয়কারী সার্ভার বা মাল্টি-সাইটগুলির জন্য একটি সাধারণ অভ্যাস হোস্টিং ব্যবহারকারীদের == ক্লায়েন্টদের ধারণা থেকে আঁকা। উভয়ই কেবল সাধারণ অনুশীলন এবং শ্ল্যাকের উত্তর হ'ল ফাইল সিস্টেমের উদ্দেশ্যযুক্ত উদ্দেশ্যগুলির আরও ভাল ব্যবহার।
জুলস

4

ভাল আপনি যে কোনও জায়গায় ফাইলগুলিকে যথাযথভাবে অ্যাক্সেস করতে পারে সেজন্য ফাইলগুলি রাখতে পারেন, তবে কেউ যদি পরে আসে তবে বিশৃঙ্খল ফাইল সিস্টেমগুলি মাথা ব্যথা।

/srv সবচেয়ে যুক্তিসঙ্গত প্লাস আপনি যদি ফাইলসাইম হায়ারার্কি স্ট্যান্ডার্ডটি অনুসরণ করেন তবে এটি এখানে যাবে।

আপনি যদি একাধিক ডোমেন করেন তবে আপনি /srv/domain1 /srv/domain2ইত্যাদি করতে পারেন তবে সেখানে ভিতরে সাবফোল্ডার/ftp /www /tftp /logs /etc.etc.etc

আমার পক্ষে এটি নির্মাণ এবং সহজেই নিয়ন্ত্রণের জন্য খুব শক্ত কাঠামো অনুভব করে

তবে প্রশাসক হিসাবে আপনি নিজের ইচ্ছামতো পরিষ্কার বা অগোছালো করতে পারেন।


1

ঠিক আছে সহজ দ্রুত উত্তর।

যদি সিস্টেমে আপনার ওয়েব ফাইলগুলি শুধুমাত্র লিনাক্স সিস্টেমে একজন ব্যবহারকারী দ্বারা অ্যাক্সেস করতে পারে। ব্যবহারকারীর হোম ডিরেক্টরি ব্যবহার করুন ( ~/)।

যদি সিস্টেমে আপনার ওয়েব ফাইলগুলি লিনাক্স সিস্টেমে মাল্টিপল ব্যবহারকারীরা অ্যাক্সেস করতে পারে। ব্যবহার /srv/

এটি হ'ল http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#SRVDATAFORSERVICESPROVIDEDBYSYSTEM বলে।

এখানে উদ্ধৃতি:

/ srv এ সাইট-নির্দিষ্ট ডেটা রয়েছে যা এই সিস্টেম দ্বারা পরিবেশন করা হয়।

এটি নির্দিষ্ট করার মূল উদ্দেশ্যটি যাতে ব্যবহারকারীরা নির্দিষ্ট সেবার জন্য ডেটা ফাইলগুলির অবস্থান সন্ধান করতে পারে এবং যাতে পরিষেবাগুলি কেবলমাত্র পাঠযোগ্য ডেটা, লিখনযোগ্য ডেটা এবং স্ক্রিপ্টগুলির জন্য (যেমন সিজি স্ক্রিপ্টস) একক গাছের প্রয়োজন হয় সেগুলি যথাযথভাবে স্থাপন করা যায়। যে নির্দিষ্ট ডেটা কেবলমাত্র নির্দিষ্ট ব্যবহারকারীর পক্ষে আগ্রহী তা ব্যবহারকারীর হোম ডিরেক্টরিতে থাকা উচিত।

বোনাস: www? FTP? প্রোটোকল দ্বারা সংগঠিত? তাই না?

Http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#SRVDATAFORSERVICESPROVIDEDBYSYSTEM এ এখানে বর্ণিত আছে

  • যদি আপনার ওয়েবসাইটটি কেবলমাত্র একজন ব্যবহারকারী দ্বারা সিস্টেমে এবং কেবলমাত্র ব্রাউজারের মাধ্যমে (HTTP প্রোটোকল) অ্যাক্সেস করা যায়: ~/http/your-website-directory/বা (https প্রোটোকল) তারপরে:~/https/your-website-directory/
  • যদি আপনার ওয়েবসাইটটি কেবলমাত্র একজন ব্যবহারকারী দ্বারা সিস্টেমে অ্যাক্সেস করা হয় এবং কেবল ব্রাউজারের মাধ্যমে নয় তবে একাধিক প্রোটোকল (ig http এবং tcp এবং ...) থাকে তবে: ~/your-website-directory/
  • যদি আপনার ওয়েবসাইটটি সিস্টেমে একাধিক ব্যবহারকারী এবং কেবল ব্রাউজারের মাধ্যমে (HTTP প্রোটোকল) অ্যাক্সেস করে থাকে তবে: /srv/http/your-website-directory/বা (https প্রোটোকল) তারপরে:/srv/https/your-website-directory/
  • যদি আপনার ওয়েবসাইটটি সিস্টেমে একাধিক ব্যবহারকারীদের দ্বারা অ্যাক্সেস করা হয় এবং কেবল ব্রাউজারের মাধ্যমে নয় তবে একাধিক প্রোটোকল (ig http এবং ftp এবং ...) থাকে তবে: /srv/your-website-directory/

হু কেন www? এটি অ্যাপাচি সময়কালের উত্তরাধিকার। www কোন প্রোটোকল ব্যবহৃত হচ্ছে তা নির্দিষ্ট করে না। দেবিয়ান আজও এটি এখনও ব্যবহার করে উদাহরণস্বরূপ আর্চ লিনাক্স / srv / http ব্যবহার করে।


0

অ্যাপাচি ওয়েব সার্ভারের অধীনে ডিফল্ট ওয়েবসাইট রয়েছে /var/www/তবে এটি অন্য ওয়েবসাইটগুলির অধীনে রাখার পরামর্শ দিচ্ছে/srv/

আমি এটি উবুন্টু সার্ভার 14.04 এলটিএসে লক্ষ্য করেছি। এর ডিফল্ট apache2.confফাইলটিতে মন্তব্য করা ব্লক রয়েছে:

#<Directory /srv/>
#   Options Indexes FollowSymLinks
#   AllowOverride None
#   Require all granted
#</Directory>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.