How to configure Basic Auth login authentication in Nginx

How to configure Basic Auth login authentication in Nginx

Sometimes we build a file server through nginx, which is generally public, but we hope that the server is not visible to others. Some people may build a login system, but it is too troublesome and unnecessary. A simpler way is to configure Basic Auth login authentication.

1. Make sure you have httpd-tools installed

yum install httpd-tools -y

2. Create an authorized user and password

htpasswd -c -d /usr/local/openresty/nginx/conf/pass_file magina

The storage path of this configuration file can be specified at will. Here I specify the nginx configuration file directory, where magina refers to the user name allowed to log in, which can be customized

3. Configure Nginx

The general configuration is as follows:

server {
  listen 80;  
  server_name res.yinnote.com;

  auth_basic "Login Authentication"; 
  auth_basic_user_file /usr/local/openresty/nginx/conf/pass_file;

  autoindex on;
  autoindex_exact_size on;
  autoindex_localtime on;

  root /mnt/html/resource;
  index index.html index.php;
}

Among them, auth_basic and auth_basic_user_file are authentication configurations. Note that the path of the password file must be the one generated above.

4. Use

# Use in the browser. Enter the address directly in the browser, and a user password input box will pop up. Enter it to access. # Use wget
wget --http-user=magina --http-passwd=123456 http://res.yinnote.com/xxx.zip

# Using curl
curl -u magina:123456 -O http://res.yinnote.com/xxx.zip

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • Detailed explanation of nginx basic auth configuration pitfalls
  • Tutorial on configuring Basic Authorization login authentication service certificate on Nginx

<<:  MySQL free installation version configuration tutorial

>>:  js canvas to realize the Gobang game

Recommend

How to lock a virtual console session on Linux

When you are working on a shared system, you prob...

CSS Tricks to Create Wave Effects

It has always been very difficult to achieve wave...

MySQL 20 high-performance architecture design principles (worth collecting)

Open Source Database Architecture Design Principl...

Solution to the routing highlighting problem of Vue components

Preface Before, I used cache to highlight the rou...

Introduction and use of five controllers in K8S

Table of contents Controller type of k8s Relation...

Detailed explanation of how MySQL (InnoDB) handles deadlocks

1. What is deadlock? The official definition is a...

Keepalived+Nginx+Tomcat sample code to implement high-availability Web cluster

Keepalived+Nginx+Tomcat to achieve high availabil...

Example test MySQL enum type

When developing a project, you will often encount...

Vue template configuration and webstorm code format specification settings

Table of contents 1. Compiler code format specifi...

How to use Docker Compose to implement nginx load balancing

Implement Nginx load balancing based on Docker ne...

CSS3 realizes the animation of shuttle starry sky

Result: html <canvas id="starfield"&...

JS native 2048 game source code sharing (the latest on the Internet)

I have been learning about algorithms recently an...