1. Knowledge Base
  2. >
  3. Results
  4. >
  5. WordPress Preventing You From Password Protecting a Directory?

WordPress Preventing You From Password Protecting a Directory?

Password protecting a subdirectory using the cPanel icon (or a .htpasswd file) will be unsuccessful if WordPress is installed in the public_html directory with permalinks enabled.

The following article will provide instructions for password-protecting a directory in WordPress and resetting the permalinks once done. This will involve editing the .htaccess file. Please review the following article for further information regarding how to edit your .htaccess file.

Before making any changes to your .htaccess file, it is suggested that you backup your website so that you can revert to a previous version should something go wrong.

Edit .htaccess File

  1. Edit the .htaccess file in your WordPress home folder (public_html) and remove the line  of code shown in bold below:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
  2. Replace that line with this new line:

    RewriteRule ./ /index.php [L]

    The final code snippet will look like this:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ./ /index.php [L]
    </IfModule>
    # END WordPress
  3. Save your changes.


Reset Permalinks

  1. From the left-hand navigation menu in WordPress, Navigate to  Settings, then click Permalinks. Note the current setting. If you are using a custom structure, copy or save the custom structure somewhere.
  2. Select any of the Common Settings.
  3. Click Save Settings.
  4. Change the settings back to the previous configuration (before you selected Default). Put the custom structure back if you had one.
  5. Click on the Save Changes button.

This should reset the permalinks and prevent any posts or pages from returning a 404 Page Not Found error. You should now be able to password-protect a subdirectory.