मुझे ऑपरेशन को थोड़ा अजीब करने की जरूरत है।
सबसे पहले, मैं डेबियन पर चलता हूं, apache2 (जो उपयोगकर्ता www-डेटा के रूप में 'रन' करता है)
तो, मेरे पास .txt ot .ini, या जो कुछ भी एक्सटेंशन है, साधारण टेक्स्ट फाइल नहीं है।
ये फ़ाइलें सबफ़ोल्डर में इस तरह की संरचना के साथ स्थित हैं:
www.example.com/folder1/car/foobar.txt www.example.com/folder1/cycle/foobar.txt www.example.com/folder1/fish/foobar.txt www.example.com/folder1/fruit/foobar ।टेक्स्ट
इसलिए, फ़ाइल नाम हमेशा समान होता है, 'पदानुक्रम' के लिए ditto, बस फ़ोल्डर का नाम बदलें: /folder-name-static/folder-name-dinamyc/file-name-static.txt
मुझे क्या करना चाहिए (मुझे लगता है) अपेक्षाकृत सरल है: मुझे सर्वर पर प्रोग्राम्स (अजगर, उदाहरण के लिए php) द्वारा उस फ़ाइल को पढ़ने में सक्षम होना चाहिए, लेकिन अगर मैं broswer द्वारा फ़ाइल सामग्री को पुनः प्राप्त करने का प्रयास करता हूं (urit www का अंकन)। example.com/folder1/car/foobar.txt, या cUrl, आदि के माध्यम से ..) मुझे एक निषिद्ध त्रुटि मिलनी चाहिए, या जो भी हो, लेकिन फ़ाइल का उपयोग नहीं करना चाहिए ।
यह भी अच्छा होगा कि एफ़टीपी के माध्यम से उन फ़ाइलों तक पहुँच भी 'छिपी' हो, या फिर भी डाउनलोड नहीं किया जा सकता है (कम से कम जो मैं एफ़टीपी रूट और उपयोगकर्ता डेटा के साथ उपयोग करता हूं)
मैं कैसे कर सकता हूँ?
मुझे यह ऑनलाइन मिला, फ़ाइल में डाल दिया जाए।
<Files File.txt>
Order allow, deny
Deny from all
</ Files>
यह काम करने लगता है, लेकिन केवल अगर फ़ाइल वेब रूट (www.example.com / myfile.txt) में है, और सबफ़ोल्डर में नहीं है। इसके अलावा, दूसरे स्तर (www.example.com/folder1/ फल /foobar.txt) में फ़ोल्डर डाइनैमिक रूप से बनाए जाएंगे। मैं समय-समय पर .htaccess फ़ाइल को बदलने से बचना चाहूंगा।
एक नियम बनाना संभव है, ऐसा कुछ, जो दिए गए नाम के साथ सभी फाइलों के लिए जाता है, जो कि * www.example.com / folder-name-static / * फ़ोल्डर-नाम-dinamyc / *** फ़ाइल-नाम पर है -static.txt *, जहां वे हिस्से समान हैं , बस ** एक परिवर्तन ?
संपादित करें :
जैसा कि डेव ड्रैगर ने कहा, मैं इसे वेब एक्सेस डायरेक्टरी के बाहर उन फाइल को रखने के लिए तैयार कर सकता हूं। लेकिन उन निर्देशिकाओं में दूसरों की फाइलें, चित्र, और मेरे उपयोगकर्ताओं द्वारा उपयोग किए जाने वाले सामान भी शामिल होंगे, इसलिए मैं बस एक डुप्लिकेट फ़ोल्डर सिस्टम नहीं करने का प्रयास करता हूं, जैसे:
/var/www/vhosts/example.com/httpdocs/folder1/car/[other folders and files here]
/var/www/vhosts/example.com/httpdocs/folder1/cycle/[other folders and files here]
/var/www/vhosts/example.com/httpdocs/folder1/fish/[other folders and files here]
//and, then for the 'secrets' files:
/folder1/data/car/foobar.txt
/folder1/data/cycle/foobar.txt
/folder1/data/fish/foobar.txt