9 messages in ru.sysoev.nginxRe: Setting up HTTP Basic Authorisation
FromSent OnAttachments
T GillettDec 6, 2006 3:02 am 
Igor SysoevDec 6, 2006 3:15 am 
T GillettDec 6, 2006 4:11 am 
Igor SysoevDec 6, 2006 4:23 am 
T GillettDec 6, 2006 4:43 am 
Igor SysoevDec 6, 2006 5:00 am 
T GillettDec 6, 2006 5:15 am 
Igor SysoevDec 6, 2006 5:40 am 
T GillettDec 6, 2006 12:54 pm 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: Setting up HTTP Basic AuthorisationActions...
From:Igor Sysoev (is-G@public.gmane.org)
Date:Dec 6, 2006 4:23:44 am
List:ru.sysoev.nginx

On Wed, 6 Dec 2006, T Gillett wrote:

Igor Sysoev <is@...> writes:

On Wed, 6 Dec 2006, T Gillett wrote:

I am trying to set up HTTP Basic Authentication for nginx on my NSLU2 running Unslung 6.8.

To test I have added the auth-basic lines to the nginx.conf file to control access to php files as follows:

#proxy php-fcgi location ~ \.php$ { fastcgi_pass 127.0.0.1:9009; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /opt/share/www/php/$fastcgi_script_name; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; auth_basic "Restricted"; auth_basic_user_file conf/htpasswd;

With the auth-basic lines commented out, I can access the php pages OK. With the lines in place, I get the login dialog box as expected, but when I login, all that happens is that the login box is refreshed.

Two entries are created in the host.access.log showing the attempted access. There is no entry in the error.log

I think I am just missing some basic step in setting this up.

Is the htpassword file correct? Is the encryption of the password correct?

What does perl -le 'print crypt("test", "cg")' show ?

Any suggestions / help appreciated

************************************************ The htpassword file for the user account ЪЪtestЪЪ is as follows: test:cgsk91HyOZHGE (the password is ЪЪtestЪЪ)

The entries in the host.access.log is as follows:

192.168.1.25 - - [06/Dec/2006:20:27:32 +1000] GET /hello.php HTTP/1.1 Status"401" Bytes195 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.8) Gecko/20061025 Firefox/1.5.0.8" "-"

192.168.1.25 - test [06/Dec/2006:20:27:40 +1000] GET /hello.php HTTP/1.1 Status"401" Bytes195 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.8) Gecko/20061025 Firefox/1.5.0.8" "-"

Could you make a debug log ?

Hi Igor Thanks for the response.

Running the perl crypt gives: # perl -le 'print crypt("test", "cg")' cgsk91HyOZHGE

This is the way I have set up the error logging. Is this correct for debug log as you have asked?

Yes, the configuration is correct, however, nginx was not built with debug logging. You should rebuild it using

./configure --with-debug ...

server { listen 7007; server_name localhost;

access_log /var/tmp/host.access.log main; error_log /var/tmp/error.log debug;

location / { root html; index index.html index.htm;

}

The error log shows entries for example for a request for a non-existent page as below:

2006/12/06 21:44:30 [error] 476#0: *1 open() "/opt/nginx/html/test.html" failed (2: No such file or directory), client: 192.168.1.25, server: localhost, URL: "/test.html", host: "192.168.1.78:7007"