Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.216.28
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
doc /
apache2-doc /
manual /
tr /
howto /
Delete
Unzip
Name
Size
Permission
Date
Action
access.html
13.86
KB
-rw-r--r--
2026-06-12 05:08
auth.html
40.69
KB
-rw-r--r--
2026-06-12 05:08
cgi.html
30.06
KB
-rw-r--r--
2026-06-12 05:08
htaccess.html
27.01
KB
-rw-r--r--
2026-06-12 05:08
http2.html
25.83
KB
-rw-r--r--
2026-06-12 05:08
index.html
9.99
KB
-rw-r--r--
2026-06-12 05:08
public_html.html
14.74
KB
-rw-r--r--
2026-06-12 05:08
reverse_proxy.html
20.16
KB
-rw-r--r--
2026-06-12 05:08
ssi.html
25.52
KB
-rw-r--r--
2026-06-12 05:08
Save
Rename
<!DOCTYPE html SYSTEM "about:legacy-compat"> <html lang="en"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta content="width=device-width, initial-scale=1" name="viewport"> <!-- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX This file is generated from xml source: DO NOT EDIT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --> <title>Access Control - Apache HTTP Server Version 2.4</title> <link href="../../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet"> <link href="../../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size"> <link href="../../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css"><link rel="stylesheet" type="text/css" href="../../style/css/prettify.css"> <script src="../../style/scripts/prettify.min.js"> </script> <link href="../../images/favicon.png" rel="shortcut icon"></head> <body id="manual-page"><div id="page-header"> <p class="menu"><a href="../mod/index.html">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Report a bug</a></p> <p class="apache">Apache HTTP Server Version 2.4</p> <img alt="" src="../../images/feather.png"></div> <div class="up"><a href="./index.html"><img title="<-" alt="<-" src="../../images/left.gif"></a></div> <div id="path"> <a href="https://www.apache.org/">Apache</a> > <a href="https://httpd.apache.org/">HTTP Server</a> > <a href="https://httpd.apache.org/docs/">Documentation</a> > <a href="../index.html">Version 2.4</a> > <a href="./index.html">How-To / Tutorials</a></div><div id="page-content"><div id="preamble"><h1>Access Control</h1> <button aria-label="Toggle language list" class="lang-toggle"><svg xmlns="http://www.w3.org/2000/svg" stroke-width="2" stroke="currentColor" fill="none" viewBox="0 0 24 24" height="16" width="16"><circle r="10" cy="12" cx="12"/><line y2="12" x2="22" y1="12" x1="2"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/></svg></button> <div class="toplang"> <p><span>Available Languages: </span><a href="../../en/howto/access.html" title="English"> en </a> | <a href="../../es/howto/access.html" hreflang="es" rel="alternate" title="Español"> es </a> | <a href="../../fr/howto/access.html" hreflang="fr" rel="alternate" title="Français"> fr </a></p> </div> <p>Access control refers to any means of controlling access to any resource. This is separate from <a href="auth.html">authentication and authorization</a>.</p> </div> <div id="quickview"><ul id="toc"><li><img alt="" src="../../images/down.gif"> <a href="#related">Related Modules and Directives</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#host">Access control by host</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#env">Access control by arbitrary variables</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#rewrite">Access control with mod_rewrite</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#moreinformation">More information</a></li> </ul></div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="section"> <h2 id="related">Related Modules and Directives <a title="Permanent link" href="#related" class="permalink">¶</a></h2> <p>Access control can be done by several different modules. The most important of these are <code class="module"><a href="../mod/mod_authz_core.html">mod_authz_core</a></code> and <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code>. Also discussed in this document is access control using <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="section"> <h2 id="host">Access control by host <a title="Permanent link" href="#host" class="permalink">¶</a></h2> <p> If you wish to restrict access to portions of your site based on the host address of your visitors, this is most easily done using <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code>. </p> <p>The <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> provides a variety of different ways to allow or deny access to resources. In conjunction with the <code class="directive"><a href="../mod/mod_authz_core.html#requireall">RequireAll</a></code>, <code class="directive"><a href="../mod/mod_authz_core.html#requireany">RequireAny</a></code>, and <code class="directive"><a href="../mod/mod_authz_core.html#requirenone">RequireNone</a></code> directives, these requirements may be combined in arbitrarily complex ways, to enforce whatever your access policy happens to be.</p> <div class="warning"><p> The <code class="directive"><a href="../mod/mod_access_compat.html#allow">Allow</a></code>, <code class="directive"><a href="../mod/mod_access_compat.html#deny">Deny</a></code>, and <code class="directive"><a href="../mod/mod_access_compat.html#order">Order</a></code> directives, provided by <code class="module"><a href="../mod/mod_access_compat.html">mod_access_compat</a></code>, are deprecated and will go away in a future version. You should avoid using them, and avoid outdated tutorials recommending their use. </p></div> <p>The usage of these directives is:</p> <pre class="prettyprint lang-config">Require host address Require ip ip.address</pre> <p>In the first form, <var>address</var> is a fully qualified domain name (or a partial domain name); you may provide multiple addresses or domain names, if desired.</p> <p>In the second form, <var>ip.address</var> is an IP address, a partial IP address, a network/netmask pair, or a network/nnn CIDR specification. Either IPv4 or IPv6 addresses may be used.</p> <p>See <a href="../mod/mod_authz_host.html#requiredirectives">the mod_authz_host documentation</a> for further examples of this syntax.</p> <p>You can insert <code>not</code> to negate a particular requirement. Note, that since a <code>not</code> is a negation of a value, it cannot be used by itself to allow or deny a request, as <em>not true</em> does not constitute <em>false</em>. Thus, to deny a visit using a negation, the block must have one element that evaluates as true or false. For example, if you have someone spamming your message board, and you want to keep them out, you could do the following:</p> <pre class="prettyprint lang-config"><RequireAll> Require all granted Require not ip 10.252.46.165 </RequireAll></pre> <p>Visitors coming from that address (<code>10.252.46.165</code>) will not be able to see the content covered by this directive. If, instead, you have a machine name, rather than an IP address, you can use that.</p> <pre class="prettyprint lang-config">Require not host <var>host.example.com</var> </pre> <p>And, if you'd like to block access from an entire domain, you can specify just part of an address or domain name:</p> <pre class="prettyprint lang-config">Require not ip 192.168.205 Require not host phishers.example.com moreidiots.example Require not host gov</pre> <p>Use of the <code class="directive"><a href="../mod/mod_authz_core.html#requireall">RequireAll</a></code>, <code class="directive"><a href="../mod/mod_authz_core.html#requireany">RequireAny</a></code>, and <code class="directive"><a href="../mod/mod_authz_core.html#requirenone">RequireNone</a></code> directives may be used to enforce more complex sets of requirements.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="section"> <h2 id="env">Access control by arbitrary variables <a title="Permanent link" href="#env" class="permalink">¶</a></h2> <p>Using the <code class="directive"><a href="../mod/core.html#if"><If></a></code>, you can allow or deny access based on arbitrary environment variables or request header values. For example, to deny access based on user-agent (the browser type) you might do the following:</p> <pre class="prettyprint lang-config"><If "%{HTTP_USER_AGENT} == 'BadBot'"> Require all denied </If></pre> <p>Using the <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> <code>expr</code> syntax, this could also be written as:</p> <pre class="prettyprint lang-config">Require expr %{HTTP_USER_AGENT} != 'BadBot'</pre> <div class="note"><h3>Warning:</h3> <p>Access control by <code>User-Agent</code> is an unreliable technique, since the <code>User-Agent</code> header can be set to anything at all, at the whim of the end user.</p> </div> <p>See <a href="../expr.html">the expressions document</a> for a further discussion of what expression syntaxes and variables are available to you.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="section"> <h2 id="rewrite">Access control with mod_rewrite <a title="Permanent link" href="#rewrite" class="permalink">¶</a></h2> <p>The <code>[F]</code> <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> flag causes a 403 Forbidden response to be sent. Using this, you can deny access to a resource based on arbitrary criteria.</p> <p>For example, if you wish to block access to a resource between 8pm and 7am, you can do this using <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>.</p> <pre class="prettyprint lang-config">RewriteEngine On RewriteCond "%{TIME_HOUR}" ">=20" [OR] RewriteCond "%{TIME_HOUR}" "<07" RewriteRule "^/fridge" "-" [F]</pre> <p>This will return a 403 Forbidden response for any request after 8pm or before 7am. This technique can be used for any criteria that you wish to check. You can also redirect, or otherwise rewrite these requests, if that approach is preferred.</p> <p>The <code class="directive"><a href="../mod/core.html#if"><If></a></code> directive, added in 2.4, replaces many things that <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> has traditionally been used to do, and you should probably look there first before resorting to mod_rewrite.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="section"> <h2 id="moreinformation">More information <a title="Permanent link" href="#moreinformation" class="permalink">¶</a></h2> <p>The <a href="../expr.html">expression engine</a> gives you a great deal of power to do a variety of things based on arbitrary server variables, and you should consult that document for more detail.</p> <p>Also, you should read the <code class="module"><a href="../mod/mod_authz_core.html">mod_authz_core</a></code> documentation for examples of combining multiple access requirements and specifying how they interact.</p> <p>See also the <a href="auth.html">Authentication and Authorization</a> howto.</p> <p>See the <a href="../sections.html#merging">configuration sections merging documentation</a> for a warning about how <code class="directive"><a href="../mod/core.html#limit"><Limit></a></code> inside <code class="directive"><a href="../mod/core.html#location"><Location></a></code> can silently override <code class="directive"><a href="../mod/core.html#directory"><Directory></a></code> access restrictions.</p> </div></div> <div class="bottomlang"> <p><span>Available Languages: </span><a href="../../en/howto/access.html" title="English"> en </a> | <a href="../../es/howto/access.html" hreflang="es" rel="alternate" title="Español"> es </a> | <a href="../../fr/howto/access.html" hreflang="fr" rel="alternate" title="Français"> fr </a></p> </div><div id="footer"> <p class="apache">Copyright 2026 The Apache Software Foundation.<br>Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> <p class="menu"><a href="../mod/index.html">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Report a bug</a></p></div><script><!--//--><![CDATA[//><!-- if (typeof(prettyPrint) !== 'undefined') { prettyPrint(); } var langToggle = document.querySelector('.lang-toggle'); var topLang = document.querySelector('.toplang'); if (langToggle && topLang) { langToggle.addEventListener('click', function() { topLang.classList.toggle('open'); }); } var qv = document.getElementById('quickview'); if (qv) { document.body.appendChild(qv); var qvBtn = document.createElement('button'); qvBtn.className = 'qv-toggle'; qvBtn.setAttribute('aria-label', 'Toggle page navigation'); qvBtn.innerHTML = '☰'; document.body.appendChild(qvBtn); qvBtn.addEventListener('click', function() { var isOpen = qv.classList.toggle('open'); if (isOpen) { qv.style.top = window.scrollY + 10 + 'px'; } }); window.addEventListener('scroll', function() { qv.classList.remove('open'); }); } //--><!]]></script> </body></html>