Search code examples
apacheserverxampprouterlan

How to implement user authentication in XAMPP server similar to a router's login?


I'm trying to set up user authentication in my XAMPP server, similar to how a router prompts for a username and password when calling a specific route. I would like to understand the underlying protocol and how the browser recognizes that the server requires authentication.

Can anyone guide me through the process of creating this authentication protocol in XAMPP? I would appreciate an explanation of the steps involved and any relevant code snippets or configuration examples.

Thank you in advance for your help!


Solution

  • The authentication you want in achieved by the server, in your case the Apache server in your WAMP setup: Follow the below steps to achieve basic authentication:

    1. Create a file named .htaccess in your web root directory.
    2. Add the following contents in it:
    AuthType Basic
    AuthName "Password Protected Area"
    AuthUserFile .htpasswd
    Require valid-user
    
    1. Create a file named .htpasswd in the same directory and add the following contents:

      admin:$apr1$lrXGxv30$XbZ2kQ3pDMDSQJ4XJV2Rv1

    Here admin is the username and $apr1$lrXGxv30$XbZ2kQ3pDMDSQJ4XJV2Rv1 is the encrypted password for admin123

    You can generate the .htpasswd file at http://www.htaccesstools.com/htpasswd-generator/

    WARNING It is recommended that you place the .htpasswd file in another directory which is not your root directory and then give the path to it in the .htaccess like: /path/to/.htpasswd

    A wonderful tutorial to help you out: https://www.web2generators.com/apache-tools/htpasswd-generator