How to Password Protect One File

This is an advanced design tutorial. If you are a
beginner, we recommend using the cPanel Password Protect Directory icon.
That icon can only protect all the files in a folder, not one specific

  1. Create a file named .htpasswd and place it above your root so visitors can’t access it.

    EXAMPLE: /home/cpanelusername/.htpasswd

  2. Put the username and encrypted password inside the .htpasswd file. EXAMPLE:


    To create the encrypted password you will need to use a utility such
    as the command-line program htpasswd. More detailed technical
    information about htpasswd can be found at

    It doesn’t matter how many files under how many directories you wanted to protect, they can share a common .htpasswd file.

  3. Place the following code in your .htaccess file, in the same folder where you want to protect the file. (Be sure to replace cpanelusername with your actual cPanel username. Replace test with the path to your file. Replace file.html with your file’s actual name.)


    <FilesMatch "file.html">
    AuthName "Member Only"
    AuthType Basic
    AuthUserFile /home/cpanelusername/.htpasswd
    require valid-user


/home/cpanelusername/public_html/test/file.html is protected.

/home/cpanelusername/public_html/test/index.html and all others are NOT protected.

You can protect more than one file by using wildcard names. On the FilesMatch line, follow one of these examples:

<FilesMatch "*.html">
<FilesMatch "file.*">
<FilesMatch "*.*">