Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I would like keep restrictions on admin folder of my project, for that I've made changes for virtual host configuration as follows

<VirtualHost *:80>
ServerAdmin webmaster@localhost

DocumentRoot /var/www
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/project_root/application/admin>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order deny,allow
    deny from all
</Directory>
<Directory /var/www/project_root/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order deny,allow
    allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

Even though I'm able to access admin pages, what might be the reason ? Currently I'm testing this in my local system.

share|improve this question

2 Answers 2

Probably the problem is that you have defined the <Directory> for project root after the one for admin directory. This may overwrite your rules above.

Try moving the <Directory> of admin directory lower in the file. Like this:

<VirtualHost *:80>
ServerAdmin webmaster@localhost

DocumentRoot /var/www
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/project_root/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order deny,allow
    allow from all
</Directory>
<Directory /var/www/project_root/application/admin>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order deny,allow
    deny from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

Regards,

m.a.sharpasand.com

share|improve this answer
    
I've already tried above as you suggested,it didn't worked for me. –  Mahesh.D Feb 26 '13 at 12:05
    
Your directive doesn't have any problems. I have checked them with my own Apache and they work. Are you sure you have restarted your server after you changed the file. And in which file exactly are you making the changes, in httpd.conf itself or some of the included files? –  Sheric Feb 26 '13 at 12:25
    
I've restarted the Apache after the change, I've created a file called project_root in /etc/apache2/sites-available/ ,there I'm making changes for creating vhost. –  Mahesh.D Feb 26 '13 at 12:38
    
Well, you have probably run the command, a2ensie. However recheck the file in sites-enabled folder and see whether every thing is moved properly in that folder. –  Sheric Feb 26 '13 at 12:49
    
I've checked Vhost configuration, its working fine without restrictions,I've followed steps in this site –  Mahesh.D Feb 26 '13 at 13:07

I have 2 assumptions:

Change

Order deny,allow
deny from all

to

Order allow,deny
deny from all

Or you might want to switch from directory to location, but this kind of another functionality.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.