2009-02-27 11 views
14

के साथ आईपी प्रतिबंध मैं पूरी साइट को इस तरह से प्रतिबंधित करना चाहता हूं कि केवल दो आईपी साइट पर प्रवेश कर सकें।एचटीएसीएएस

ErrorDocument 403 http://www.example.com/views/error403.html 

Order Deny,Allow 
Deny from all 
Allow from 311.311.311 322.322.322.322 

ErrorDocument 404 /views/error404.html 
ErrorDocument 500 views/error500.html 

(जाहिर है, इन नकली आईपी कर रहे हैं, मेरी .htaccess में वे सही आईपी कर रहे हैं)

आप देख सकते हैं, मैं (साइट के रूट पर) मेरी .htaccess में निम्नलिखित है मैं केवल 322.322.322.322 और सभी आईपी 311.311.311.0/24 से अनुमति देता हूं, और बाकी लोगों के लिए इनकार करता हूं। मैं जो चाहता हूं वह यह है कि जब कोई अन्य आईपी से साइट में प्रवेश करता है, तो वह त्रुटि 403.html पेज देखेगा।

फ़िल्टर ठीक काम कर रहा है, लेकिन पुनर्निर्देशन नहीं। जब मैं एक आईपी इनकार से साइट में प्रवेश करने की कोशिश, मैं एक अपाचे संदेश दिखाई:

Found 
The document has moved here 

कहाँ "यहाँ" error403.html करने के लिए एक कड़ी है।

मुझे लगता है कि मैं भी त्रुटि 403.html पृष्ठ को प्रतिबंधित कर रहा हूं।

मैं यह प्रतिबंध कैसे कर सकता हूं, लेकिन त्रुटि पृष्ठ के दृश्य को अनुमति दे सकता हूं? क्या मुझे error403.html पृष्ठ को दूसरी निर्देशिका (यानी,/विचार/त्रुटि /) पर ले जाना चाहिए और उसमें अन्य .htaccess डालें, जिससे उस फ़ाइल में सभी आईपी की अनुमति हो?

अग्रिम धन्यवाद!

उत्तर

10

हां, आपने अपने स्वयं के प्रश्न का उत्तर दिया है। :) सभी गैर-संरक्षित पृष्ठों को किसी अन्य निर्देशिका में अपने .htaccess के साथ उचित Allow और Deny युक्त ले जाएं।

+0

मैं सोच रहा था कि इस मुद्दे को हल करने के लिए एक और प्रख्यात रूप मौजूद होगा, लेकिन आपने मेरे संदेह की पुष्टि की है; मैं इसे एक और निर्देशिका-htaccess जोड़ी के साथ करूँगा। धन्यवाद व्लाद! – ARemesal

+0

आप हमेशा httpd.conf से fancier नियमों के साथ ऐसा कर सकते हैं कि कौन सी निर्देशिका प्रभावित होती है और जो नहीं हैं, लेकिन स्पष्ट रूप से यह इसके लायक नहीं है जब तक कि आप .htaccess के उपयोग के साथ प्रदर्शन समस्याओं को हल नहीं कर रहे हैं (जो आप तब तक नहीं करेंगे प्रति सेकंड सैकड़ों या हजारों अनुरोधों की सेवा करें।) – vladr

+0

और यह साइट एक साझा मशीन में होस्ट की गई है जहां मैं httpd.conf नहीं बदल सकता, इसलिए .htaccess के साथ समाधान इस के लिए बिल्कुल सही है। – ARemesal

संबंधित मुद्दे