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

I'm trying to set up an nginx server to replace our current setup based on Apache. Our users have password protected directories (with directives in .htaccess files) which we need to keep protected in the new setup.

As far as I can see, nginx doesn't have a Directory directive, but only a Location directive, which refers to URIs instead of file system paths. This means that if a directory is reachable through more than one URL. I have to include them all in one or more Location directives. For example:

domain.com, root: /home/user/public_html
sub.domain.com, root: /home/user/public_html/sub

If user protects sub.domain.com/admin (directory /home/user/public_html/sub/admin) I must make sure that both /admin in sub.domain.com and /sub/admin in domain.com are protected with the same password file. I'd rather protect the directory itself, and not the URLs through which visitors can access its contents.

So, does nginx have any mechanism that allows to refer to file system paths in configuration files, like Apache's <Directory> blocks do - or maybe I'm just misreading nginx's documentation?

share|improve this question
    
I do not know of a direct replacement for the Directory attribute in Nginx. This is one of the biggest challenges in porting to Nginx is moving from a filesystem-focused view of configuration to a URI-focused configuration. Also, don't forget about regex. If everything is in /admin then a regex may work. –  jeffatrackaid Oct 2 '12 at 18:39
1  
Don't lay out the directory structure this way in the first place. Use separate directories for each virtual host, which are not nested within each other. –  Michael Hampton Oct 26 '12 at 17:36

1 Answer 1

There's no such mechanism in nginx. I usually set different directories for different hosts:

domain.com, root: /home/user/sites/domain.com
sub.domain.com, root: /home/user/sites/sub.domain.com

which simplifies (nginx) configuration.

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.