apache - .htaccess to exclude folder -
my root folder have following .htaccess:
options -indexes options +followsymlinks <ifmodule mod_rewrite.c> rewriteengine on rewritecond %{http_host} ^yourdomain.com [nc] rewriterule ^(.*)$ http://www.yourdomain.com/$1 [l,r=301] rewritecond %{request_filename} !-f rewritecond %{request_filename} !-d rewriterule .* loader.php [l,qsa] </ifmodule>
i want exclude folder of siteadmin rule of rewriterule .* loader.php [l,qsa] on root folder
inside subfolder: "siteadmin" have .htaccess files this:
authtype basic authname "siteadmin" authuserfile "/home/user1/.htpasswds/public_html/siteadmin/passwd" require valid-user
loader.php (on root directory):
<?php //die('only enable script if dont have support multiviews'); $relative = ''; $loaders = array( 'ajax' => 1, 'album' => 1, 'albums' => 1, 'blog' => 1, 'blogs' => 1, 'captcha' => 1, 'categories' => 1, 'community' => 1, 'confirm' => 1, 'error' => 1, 'feedback' => 1, 'feeds' => 1, 'game' => 1, 'games' => 1, 'index' => 1, 'invite' => 1, 'loader' => 1, 'login' => 1, 'logout' => 1, 'lost' => 1, 'mail' => 1, 'notice' => 1, 'notices' => 1, 'photo' => 1, 'requests' => 1, 'search' => 1, 'signup' => 1, 'static' => 1, 'stream' => 1, 'upload' => 1, 'user' => 1, 'users' => 1, 'video' => 1, 'videos' => 1, 'edit' => 1 ); $query = ( isset($_server['query_string']) ) ? $_server['query_string'] : null; $request = str_replace($relative, '', $_server['request_uri']); $request = str_replace('?' .$query, '', $request); $request = explode('/', trim($request, '/')); if (isset($request['0'])) { $page = $request['0']; if (isset($loaders[$page])) { require $page. '.php'; } else { header('http/1.0 404 not found'); die(); } } else { header('http/1.0 404 not found'); die(); } ?>
the loader.php job when access site http://www.domain.com/signup load signup.php
the siteadmin still not able use password protect. there anyway can exclude folder siteadmin loader.php rule?
try code :
options -indexes options +followsymlinks rewriteengine on rewritecond %{http_host} ^yourdomain.com [nc] rewriterule ^(.*)$ http://www.yourdomain.com/$1 [l,r=301] rewritecond %{request_filename} !-f rewritecond %{request_filename} !-d rewritecond %{request_uri} !^/siteadmin/? rewriterule ^(.*)$ loader.php [l,qsa]
Comments
Post a Comment