403 के बजाय 404 के साथ निर्देशिका लिस्टिंग को अक्षम करें


9

मैंने निर्देशिका लिस्टिंग को अक्षम कर दिया है ...

Options -Indexes

जब मैं इस तरह एक निर्देशिका का प्रयास करता हूं और उसका उपयोग करता हूं: -

www.example.com/secret/

मुझे 403 निषिद्ध प्रतिक्रिया मिली।

हालाँकि, मैं 404 Not Found प्रतिक्रिया चाहता हूं , इसलिए हैकर्स इतनी आसानी से मेरी निर्देशिका संरचना का अनुमान नहीं लगा सकते हैं। मुझे यह कैसे करना है?



मुझे इस बात का एहसास है, लेकिन किसी के लिए भी इसे आसान बनाने का कोई मतलब नहीं है, खासकर क्योंकि इसे कठिन बनाने के लिए बहुत कम प्रयास करना पड़ता है।
रिक हेवुड

जवाबों:


8

Mod_rewrite और AllowOverride को / गुप्त में सक्षम करें। फिर बनाएँ।

RewriteEngine On
RewriteBase   /secret
RewriteRule   ^$ - [R=404,L]

3

मैंने इसी तरह की समस्या के जवाब के लिए इंटरनेट पर देखा है। जबकि mod_rewrite एक संभावित समाधान है, मुझे लगता है कि सबसे अच्छा समाधान "पुनर्निर्देशन" निर्देश का उपयोग करता है।

StackOverflow देखें : समस्या पुनर्निर्देशित 403 404 करने के लिए निषिद्ध नहीं मिला


1

एक कस्टम 403 स्क्रिप्ट बनाएँ जो 404 त्रुटि देता है।

उदाहरण के लिए, PHP में:

<?php
header("HTTP/1.0 404 Not Found");
die("<h1>404 Not Found</h1>");
?>

अब 403 परिणामों के लिए इस स्क्रिप्ट का उपयोग करने के लिए Apache कॉन्फ़िगर करें:

ErrorDocument 403 /403.php

पुनर्लेखन के साथ कोई खिलवाड़ नहीं है और यह तुरंत पूरे सर्वर के लिए काम करता है।


क्या यह अभी भी सर्वर खुरचने वाले लोगों के लिए 403 के रूप में प्रदर्शित नहीं होगा?
IRGeekSauce

1
नहीं। सर्वर header()कमांड के कारण सही 404 त्रुटि के साथ उत्तर देगा ।
जेराल्ड श्नाइडर

-1, क्योंकि आपका कस्टम एरर मैसेज हो सकता है! = आपका सर्वर एरर मैसेज (यह नग या अपाचे या जो भी हो)। यदि आपके सर्वर को कॉन्फ़िगर करने या .htaccess फ़ाइलों का उपयोग करने का कोई तरीका नहीं है तो यह अंतिम समाधान है। इसके अतिरिक्त यह समाधान आपको अपनी वेबसाइट को DirBustering करने से नहीं रोकेगा, क्योंकि आप अभी भी सर्वर त्रुटि संदेशों से ऐसे "कस्टम त्रुटि संदेशों" को भेद सकते हैं।
अनवरगृह

0

सूची और प्रदर्शन 404 त्रुटि के रूप में निर्देशिका की सामग्री को प्रदर्शित करने को रोकने के लिए मेरा समाधान सरल है। अपने प्रोजेक्ट की रूट डायरेक्टरी में .htaccess फाइल बनाएं और लिखें कि कौन सी डायरेक्ट्री सुरक्षित होनी चाहिए।

निर्देशिकाएँ संरचना

- your_root_directory
  - .htaccess
  - 404.html
  - index.html 
  - app
    - other files I do not want to show
  - models
    - other files I do not want to show

.htaccess

RewriteEngine On
RewriteRule   ^app/ - [R=404,L]
RewriteRule   ^models/ - [R=404,L]

ErrorDocument 404 /your_root_directory/404.html

.Htaccess की दूसरी पंक्ति ऐप डायरेक्टरी और उसके सभी उप-वर्गों में सूची आइटम तक पहुँच को रोकती है।

.Htaccess की तीसरी पंक्ति मॉडल निर्देशिका और उसके सभी उप-समूहों में सूची आइटम तक पहुँच को रोकती है।

.Htaccess लाइन की चौथी हमारी अपनी 404 त्रुटि (यदि आप अपाचे डिफ़ॉल्ट त्रुटि नहीं दिखाना चाहते हैं) सेट करता है।

जब आप htaccess के साथ काम करते हैं तो अपने ब्राउज़र पर कैश साफ़ करना याद रखें।


-2

मास्क त्रुटियों के लिए .htaccess का उपयोग करें। इस गाइड को देखें:

http://www.tarahost.net/pages/web-design/29371.php


3
जब तक यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा । यह लिंक अब मृत हो गया है और इस प्रकार यह उत्तर अब बेकार है
मार्क हेंडरसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.